본문 바로가기
WeekdayLife/excel

[엑셀VBA] VBA로 .txt 파일 생성하기

by JO_i 2016. 11. 17.

VBA로 .txt 파일 생성하기

별로 필요없는 기능이지만,

윈도우 외부 프로그램을 컨트롤하는 기능이 있다는

사실까지만 알고싶었다.

 

음.. 이 이상은 너무 복잡해서 잘 모르겠다

 

 

 

[코드샘플]

Sub Createtextfile()

Dim TF As Object

'만들기
Set TF = CreateObject("scripting.filesystemobject")
Set TFT = TF.Createtextfile("c:\test.txt")

'내용넣기
TFT.WriteLine "this is just test file" & vbCr & "afs"
TFT.WriteLine "this is 2nd line of test file"
TFT.WriteLine ActiveSheet.Name

'닫기
TFT.Close
Set TF = Nothing
Set TFT = Nothing

End Sub

 

 

FileSystemObject 객체 메소드

다른 블로그에서 퍼왔는데 어디였는지 까먹었다. 출처를 넣고 싶었지만, 어쩔 수 없다

 

드라이브 관련

DriveExists : 지정한 드라이브 존재 여부 True, False 반환

GetDrive : 지정한 경로에 있는 드라이브 해당하는 Drive 객체 반환

GetDirveName : 지정한 경로의 드라이브 이름을 포함하는 문자열 반환

 

폴더 관련

BuildPath : 기존 경로에 이름을 추가한다.

CopyFolder : 폴더를 현재 위치에서 다른 위치로 이동

CreateFolder : 폴더 생성

DeleteFolder : 지정한 폴더와 그 내용 삭제

FolderExists : 지정한 폴더 존재 여부 True, False 반환

GetAbsolutePathName : 절대경로

GetFolder : 지정된 경로에 있는 폴더에 해당하는 Folder객체 반환

GetParentFolderName : 지정한 경로에 있는 마지막 파일이나 폴더의 상위 폴더 포함하는 문자열 반환

GetSpecialFolder : 지정한 특수 폴더 반환(Windows, system, temp 폴더)

GetTempName : 임시파일이나 폴더이름 반환

MoveFolder : 폴더 위치 이동

 

파일 관련

CreateTextFile : 지정한 이름으로 파일 생성, TextStream 객체 반환

OpenTextFile : 지정한 파일을 열고, 읽고 쓰고 추가하는데 사용할 수 있는 TextStream 객체 반환

CopyFile : 하나 이상의 파일을 현재 위치에서 다른 위치로 복사

MoveFile : 파일 위치 이동

DeleteFile : 지정한 파일 삭제

FileExists : 지정한 파일 존재 여부 True, False 반환

GetFile : 지정된 경로에 있는 파일에 해당하는 File객체 반환

GetFileName : 지정한 경로에서 드라이브 내역이 아닌 마지막 파일 이름이나 폴더 반환

GetBaseName :

GetExtensionName : 확장명 포함하는 문자열 반환