Когда вы выполняете цикл for в Excel VB, как указать, что параметр является числом в коде. Более конкретно, предположим, что я хочу открыть 500 файлов, названных как file1, file2, file3, ... как вы указываете в следующем коде, что "я" является число, а не буква ???

Sub CopyCells()
    For i = 1 To 500
        Workbooks.Open Filename:="filei.do"
    Next i
End Sub

Я не знаю Excel VB; Я знаю, как программировать в Stata намного лучше. Моя проблема в том, что у меня есть 500 файлов Excel, которые мне нужно отформатировать и сохранить, прежде чем я смогу без проблем экспортировать в Stata. Для этого я написал код VB. Все работает хорошо, за исключением цикла for, потому что я не знаю, как сказать, что "i" - это число, а не буква i. В Stata все, что вы делаете, это пишите `i '.

1 ответ1

3

Сначала вам нужно преобразовать переменную i из целочисленного типа в строковый тип, используя функцию CStr :

Sub CopyCells()
    For i = 1 To 500
        Workbooks.Open Filename:="file" + CStr(i) + ".do"
    Next i
End Sub

http://msdn.microsoft.com/en-US/library/ch47ss2a(v=vs.80).aspx

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .