VBA Macro/VBA Excel

[엑셀] 메모장 데이터 불러오기 매크로

루아흐뉴마 2017. 11. 7. 00:04
반응형
메모장의 데이터를 Line by Line으로 변수에 넣는 매크로.
이 경우 엑셀파일과 메모장 파일이 같은 폴더 내에 있어야 한다.
다른 경우에는 참조할 수 있도록 myPath를 지정해주어야 하고.


VBA Code
Option Base 1
Option Explicit
Dim textLine As String
Dim myText() As Variant
Dim myPath As String, fileName As String
Dim file_number As Long, cnt As Long
Sub xml_()
 
myPath = ThisWorkbook.Path & "\"                    'myPath 변수에 현재 엑셀파일의 위치 및 역슬래시 입력
fileName = "HRD_API.txt"
file_number = FreeFile                              '사용되지 않은 파일 번호 할당하기
 
Open myPath & fileName For Input As #file_number    '파일 열기 (경로를 따로 지정하지 않으면 엑셀파일 동일 위치 참조)
    cnt = 1
    Do While Not EOF(1)                             '파일의 끝을 만날 때까지 반복하기
        Line Input #file_number, textLine           'HRD_API.txt 파일의 각 행을 TextLine 변수로 읽기
        If textLine <> "" Then                      '빈 행이 아니면
            cnt = cnt + 1                           '카운트 증가
            ReDim Preserve myText(cnt)              '배열 리사이즈
            myText(cnt) = textLine                  '배열에 읽어들인 TextLine 할당
            Sheets(1).Cells(cnt, "A") = myText(cnt) '첫 번째 시트에 뿌리기
        End If
    Loop
Close #file_number                                  '파일 닫기
 
 
End Sub


반응형