我正在开设excel VBA学校作业,我遇到了一个问题,似乎无法在线找到答案。 我有数据库表保存信息,在某个位置我有常量数组= {false,true,false}我需要它将它转换为VBA数组TF(1到3) TF(1)的值应为false TF(2)的值应为true TF(3)的值应为false 到目前为止我的代码看起来像这样:
Sub trying()
Dim TF(1 To 3) As String
Set targetWorksheet = Worksheets("duomBazeSheet")
Worksheets("duomBazeSheet").Activate
With targetWorksheet
TF(1) = .Cells(2, 8).Value
MsgBox (TF(1))
End With
End Sub
" duomBazeSheet"是一张包含所有数据且目标位置为(2,8)
的工作表任何想法?
编辑:此处链接工作表的外观:数组突出显示https://imgur.com/a/lII3c
答案 0 :(得分:2)
基于名为Evaluate的功能,可以执行此操作
Dim tf
tf = Application.Evaluate("{True,False,True}")
考虑到H2中的公式文本,试试这个......
Sub Test()
Dim tf
tf = Application.Evaluate(ActiveSheet.Cells(2, 8).Formula)
Dim i
For i = LBound(tf) To UBound(tf)
MsgBox tf(i)
Next i
End Sub
答案 1 :(得分:0)
以下代码声明并填充值为false,true,false的一维数组。 For
循环将在结尾显示每个元素。目前还不清楚您想要放置这些值的位置。
Sub trying()
Dim TF As Variant
Dim i As Long
Dim targetWorksheet As Worksheet
Set targetWorksheet = Worksheets("duomBazeSheet")
With targetWorksheet
TF = Split(.Cells(2, 8).Value, Chr$(10)) 'Chr$(10) is a carriage return
End With
For i = LBound(TF) To UBound(TF)
MsgBox TF(i)
Next i
End Sub