VBA Макросы: Как перебрать в цикле имена переменных, в которых есть порядковые номера?

Автор Alx, 24 июня 2018, 21:16

Alx

Private Sub LastProverka_Click()
Set wsplan = ActiveWorkbook.Sheets("План")
Set ws331 = ActiveWorkbook.Sheets("331")
Set ws332 = ActiveWorkbook.Sheets("332")
Set ws333 = ActiveWorkbook.Sheets("333")

10: If Left(wsplan.Cells(i, 2).Value, 10) = Left(ws331.Cells(j, 1).Value, 10) Then s=1
20: If Left(wsplan.Cells(i, 2).Value, 10) = Left(ws332.Cells(j, 1).Value, 10) Then s=2
30: If Left(wsplan.Cells(i, 2).Value, 10) = Left(ws333.Cells(j, 1).Value, 10) Then s=3

Как выполнить в строках 10,20,30 числа
331, 332, 333 перебором в цикле. т.е. примерно вот так:

For X= 331 to 333

If Left(wsplan.Cells(i, 2).Value, 10) = Left(wsX.Cells(j, 1).Value, 10) Then s=X-330
Next X

Администратор

Такой возможности в VBA нет: нельзя составить имя переменной из частей, используя знак "&" или "+".
Нужно что-то другое придумать.