0
我正在尝试使用某些变量编写宏。具体的工作表名称。几乎每次我必须在宏中找到正确的工作表名称,所以工作表名称来自单元格值。但是将变量引用到另一个变量会导致错误。将变量的范围分配给另一个变量
向下可以看到分配部分的代码。我愿意接受任何建议。
太感谢你了..
Dim pLastRow As Long
Dim p As Integer
pLastRow = WorksheetFunction.Max(Worksheets(WS_All).Range("AA22:AA1100"))
pLastRow2 = pLastRow + 21
For p = 22 To pLastRow2
If Cells(p, 26).Value = "" Then
WS_1 = Worksheets(WS_All).Cells(p, 16).Value
WS_2 = Worksheets(WS_All).Cells(p, 19).Value
WS_3 = Worksheets(WS_All).Cells(p, 22).Value
End If
Dim j As Long
For j = 1 To 3
Dim j_WS As Variant
j_WS = "WS_" & j
MsgBox Worksheets(j_WS).Cells(1, 1).Value
o = 14 + j * 3
Dim WA1 As String
Dim WA2 As String
Dim WA3 As String
Gorev = Worksheets(WS_All).Cells(p, o).Value
SlideNo = Worksheets(WS_All).Cells(p, 34).Value
Egitim_Adi = Worksheets(WS_All).Cells(2, 3).Value
Dim Check1 As Range
Set Check1 = Worksheets(j_WS).Columns("A") 'Egitim_Adi Kontrolü için'
Dim Check2 As Range
Set Check2 = Worksheets(j_WS).Columns("B") 'SlideNo Kontrolü için'
Dim Check3 As Range
Set Check3 = Worksheets(j_WS).Columns("C") 'Gorev Kontrolü için'
正如你所看到的,WS_1,WS_2和WS_3解决方案值来自名为WS_All的工作表,该工作表也是从范围中预定义的。 我想要做的是根据这些工作表(WS_1 ...)的行,有另一个工作表名称,他们被称为WA1,WA2和WA3。 我想使用名为“j”范围的WA1,WA2和WA3,并将它们与j_WS一起使用。 当我用F8运行代码时,我发现j_WS等于WS_1或WS_2。但是我希望j_WS等于WS_1的值,它是一个真正的工作表名称。 – Bildircin13