Sunday, August 12, 2007
엑셀 VBA매크로, 파일 내용 읽어 셀에 입력하기 예제; Excel Text File Input Cell
하드에 있는 텍스트 파일의 내용을 한줄씩 읽어서, 엑셀 시트의 셀에 한줄씩 입력하는 비베 소스입니다. 일반 아스키 파일 즉 텍스트 파일로 된 데이터를, 엑셀에 한꺼번에 쉽게 입력할 수 있습니다. 다만 이 소스는 기초적인 것이라서, 필드로 구분된 데이터를 다루지는 못하고, 그냥 파일을 통째로 시트에 삽입해 버립니다.
(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
비베 에디터에서 F5 키를 누르거나, 엑셀에서 Alt+F8 키를 누르면 VBA 매크로가 실행됩니다.
※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
파일을 읽어서 대화상자 [메시지 박스] 에 출력하기: ▶▶ 엑셀 VBA 파일 읽기, 텍스트 파일 열기 예제; Excel Text File Read
엑셀 비베: 아스키 파일 내용을, 셀에 자동 입력 예제 소스 코드
(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
비베 에디터에서 F5 키를 누르거나, 엑셀에서 Alt+F8 키를 누르면 VBA 매크로가 실행됩니다.
※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
Sub Text_File_To_Excel()
On Error GoTo errorMessage
Dim s As String, fileHandle As Integer, myRows As Long
fileHandle = FreeFile ' 사용 가능한, 파일 핸들 번호 구하기
Open "D:\Z\test.txt" For Input As fileHandle ' 파일 열기
myRows = 1
' 텍스트 파일 한 줄씩 읽기 (한글 영문 모두 가능)
Do While Not EOF(fileHandle) ' 파일의 끝까지 반복
Line Input #fileHandle, s ' 읽은 1줄을 변수 s 에 대입
Cells(myRows, 1).Value = s ' 읽은 1행을, 엑셀 셀에 입력
myRows = myRows + 1 ' 다음 행에 입력하기 위해 행번호 증가
Loop
quitSub:
Close fileHandle ' 위에서 연 파일만 닫기
Exit Sub ' 이 Sub 프로시저를 종료
errorMessage:
' 에러 메시지 대화상자 출력
MsgBox Err.Description, vbOKOnly + vbCritical, "에러 코드: " & Err.Number
Resume quitSub
End Sub
On Error GoTo errorMessage
Dim s As String, fileHandle As Integer, myRows As Long
fileHandle = FreeFile ' 사용 가능한, 파일 핸들 번호 구하기
Open "D:\Z\test.txt" For Input As fileHandle ' 파일 열기
myRows = 1
' 텍스트 파일 한 줄씩 읽기 (한글 영문 모두 가능)
Do While Not EOF(fileHandle) ' 파일의 끝까지 반복
Line Input #fileHandle, s ' 읽은 1줄을 변수 s 에 대입
Cells(myRows, 1).Value = s ' 읽은 1행을, 엑셀 셀에 입력
myRows = myRows + 1 ' 다음 행에 입력하기 위해 행번호 증가
Loop
quitSub:
Close fileHandle ' 위에서 연 파일만 닫기
Exit Sub ' 이 Sub 프로시저를 종료
errorMessage:
' 에러 메시지 대화상자 출력
MsgBox Err.Description, vbOKOnly + vbCritical, "에러 코드: " & Err.Number
Resume quitSub
End Sub
파일을 읽어서 대화상자 [메시지 박스] 에 출력하기: ▶▶ 엑셀 VBA 파일 읽기, 텍스트 파일 열기 예제; Excel Text File Read
tag: office
엑셀 Excel | 워드 Word | VBA 매크로 | 오피스
<< Home