我在使用結構化參考時觸發Worksheet_Change
宏時出現問題。我發誓我之前工作過,所以我認爲這是一個語法問題。VBA Worksheet_change宏未檢測到結構化參考表中的更改
當我使用「$ A $ 1」引用目標單元格時,引用它的工作正常。但是,當我使用結構化的參考來更改單元格時,它不起作用。其他結構化引用都正常工作。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Target.Address = "MonsterStats[Monster Name]" Then
Range("B25").Font.Bold = False
Range("B25").Font.Italic = False
Range("B25") = Range("MonsterStats[Ability1]") & Range("MonsterStats[Ability1 Text]")
Range("B25").Characters(1, Len(Range("MonsterStats[Ability1]"))).Font.Bold = True
Range("B25").Characters(1, Len(Range("MonsterStats[Ability1]"))).Font.Italic = True
End If
If Target.Address = "$P$3" Then
Range("B26").Font.Bold = False
Range("B26").Font.Italic = False
Range("B26") = Range("MonsterStats[Ability1]") & Range("MonsterStats[Ability1 Text]")
Range("B26").Characters(1, Len(Range("MonsterStats[Ability1]"))).Font.Bold = True
Range("B26").Characters(1, Len(Range("MonsterStats[Ability1]"))).Font.Italic = True
End If
End Sub
你的代碼的邏輯是'If ... ElseIf ... End If',而不是'If ... End If,If ... End If' – Variatus