2013-09-16 4 views
3

문서 내의 특정 Word 스타일 집합의 모든 인스턴스에서 특정 작업을 수행하는 매크로를 작성했습니다.Microsoft Visual Basic : 배열 변수를 초기화하는 방법?

Dim mylist(4) As String 
mylist(1) = "Heading 1" 
mylist(2) = "Heading 2" 
mylist(3) = "Heading 3" 
mylist(4) = "Caption" 

내가 (Office 도움말 내부 또는 microsoft.com을에서) 그렇게하는 짧은 방법을 언급하는 모든 도움말 페이지를 찾을 수 없습니다 :

이렇게하려면, 나는 이름의 배열이 방법을 만들어 . 제가 돈 때, 문자열이나 숫자를인지 내가 배열의 한 줄 로딩에 대한 일반적인 솔루션을 찾고 있어요 (의사)

mylist(1:4) = ["Heading 1", "Heading 2", "Heading 3", "Caption"] 

, '같은 것을이 점을 단순화 할 것입니다 구문이 있나요 모두 스타일을 문서에 넣으라고합니다.

EDIT : Collection initialization syntax in Visual Basic 2008?을 가로 질렀다. 대답은 "VB10이 아닐 때까지"입니다. 그 결론에 대한 모든 업데이트가 환영받을 것입니다.

+0

우리 모두가 비밀리에 VB' 더'FORTRAN' 같았다'바랍니다. – ja72

답변

6

이 가까이 있지만 다른 조금 : 중국식으로 myList (4) 문자열

에서
Dim myarray As Variant 
myarray = Array("Cat", "Dog", "Rabbit") 

으로 : http://www.mrexcel.com/forum/excel-questions/18225-initializing-arrays-single-statement.html

+0

이것은 더 많은 메모리를 사용합니다. 문자열에 대해서만 사용하려는 경우 String 유형 – makciook

+0

에 거대한 목록이 없으므로 메모리는 문제가되지 않습니다. 오랫동안 'Excel'뿐만 아니라'Word'에서도 작동하는 한 괜찮을 것입니다. 다시보고 할게. –

+0

그 링크는'Dim mylist() As String mylist = Split ("제목 1, 제목 2, 캡션", ",")'을 제안했습니다. 두 옵션 모두 잘 작동하는데,이 배열의 인덱스는 0이 아니라 1에서 시작한다는 것을 기억해야합니다. 감사! –