0

我有一个名为 Ch Data 的工作表,上面有不同数量的相同大小的表。单元格 J5、J20 等包含每个表格的用户输入标签。我想将这些表格标签与允许的表格标签的命名范围进行比较。如果用户输入的表格标签不在命名范围内,则应有一条消息告诉用户输入有效标签。我尝试将命名范围读入一个数组,然后循环遍历表标签和数组元素以比较它们。我在 IF 语句的行中收到错误。错误是:“对象不支持此属性或方法”。我怀疑我未能正确定义或引用数组。有任何想法吗?

Private Sub Worksheet_change(ByVal Target As Range)
    Application.EnableEvents = False

    Dim LLChannels(), i As Long, j As Long
    Set ChData = Sheets("Ch Data")

    LLChannels = Application.Transpose(ChData.Range("Channels" & SymbolCount).Value)

    NumTables = (UsedRange.Rows.Count - 4) / 15
    For i = 5 To NumTables Step 15
        For j = 1 To UBound(LLChannels)
            If LLChannels(j) <> Me.Cells.["J" & i] Then
                MsgBox "Channel not in Frequency Plan. Enter valid channel."
            End If
        Next
    Next

    Application.EnableEvents = True
End Sub
4

1 回答 1

1

这是你需要的吗?

If LLChannels(j) <> Range("J" & i).Value
于 2013-10-06T00:09:45.627 回答