首页 > 解决方案 > 如何在 MS Acces 中使用 VBA 更改字体大小

问题描述

我正在尝试根据文本框值更改部分组中 Ms Access 报告中的字体大小。

我在“On Format”事件中用 VBA 编写了一些代码:

Private Sub Header_OrganizationalUnit_Format(Cancel As Integer, FormatCount As Integer)
    If Me.txt_OrganizationalUnit.Value = "HeadQuarter" Then
        Me.txt_OrganizationalUnit.FontSize = 24
    Else
        Me.txt_OrganizationalUnit.FontSize = 12
    End If
End Sub

它不会更改文本框中的任何字体大小

标签: vbams-access

解决方案


首先,您不需要 VBA 来执行此操作。您可以改用条件格式。

您要捕获的事件就是Change事件。您还需要读取Text属性而不是Value,因为该值仅在文本框失去焦点时更新。

将此事件过程添加到您的报告代码中:

Private Sub txt_OrganizationalUnit_Change()
    With txt_OrganizationalUnit
        If .Text = "HeadQuarter" Then
            .FontSize = 24
        Else
            .FontSize = 12
        End If
    End With
End Sub

使用with块可以减少 VB 在后台执行的绑定调用的数量,同时使您的代码看起来更好。 在编辑中添加:更改事件就在这里。


推荐阅读