#excel #vba #dynamic
#excel #vba #динамический
Вопрос:
Это мой текущий код VBA. Я хотел бы, чтобы номер недели увеличивался на 1 каждую неделю. (так что UAE_WK_2)
Sub HelloALL3()
Application.Run "PERSONAL.XLSB!Hello12"
Windows("UAE_WK_1.xlsm").Activate
Application.Run "PERSONAL.XLSB!Hello13"
Windows("UAE_WK_1.xlsm").Activate
Application.Run "PERSONAL.XLSB!Hello14"
Windows("UAE_WK_1.xlsm").Activate
Application.Run "PERSONAL.XLSB!Hello15"
Windows("UAE_WK_1.xlsm").Activate
Application. Run "PERSONAL.XLSB!Hello16"
End Sub
Ответ №1:
Вы можете использовать простой цикл для номера недели
Sub test()
Dim weekNum As Integer
For weekNum = 1 To 4
Application.Run "PERSONAL.XLSB!Hello12"
Windows("UAE_WK_" amp; weekNum amp; ".xlsm").Activate
Next weekNum
End Sub
Комментарии:
1. Если количество недель увеличивается, то есть, если я на 40 неделе и продолжаю увеличивать число каждую неделю, какие изменения я могу внести? Я новичок в VBA и немного заблудился
2. Если я понимаю, вы можете просто изменить эту строку: для weekNum = от 1 до 40