루프용 Excel VB; 매개변수 i가 코드의 매개변수임을 어떻게 지정합니까?

루프용 Excel VB; 매개변수 i가 코드의 매개변수임을 어떻게 지정합니까?

Excel VB에서 for 루프를 수행할 때 매개변수가 코드의 숫자임을 어떻게 지정합니까? 좀 더 구체적으로 말하면, file1, file2, file3이라는 이름의 500개 파일을 열고 싶다고 가정해 보겠습니다. 다음 코드에서 "i"가 문자가 아니라 숫자라는 것을 어떻게 지정합니까???

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

저는 Excel VB를 전혀 모릅니다. 나는 Stata에서 프로그래밍하는 방법을 훨씬 더 잘 알고 있습니다. 내 문제는 문제 없이 Stata로 내보내기 전에 형식을 지정하고 저장해야 하는 500개의 Excel 파일이 있다는 것입니다. 그러기 위해 VB 코드를 작성했습니다. for 루프를 제외한 모든 것이 잘 작동합니다. 왜냐하면 "i"가 문자 i가 아니라 숫자라고 말하는 방법을 모르기 때문입니다. Stata에서 당신이 하는 일은 'i'를 쓰는 것 뿐입니다.

답변1

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

관련 정보