우리는 CSV로 엑셀 범위를 기록 엑셀 VBA에서 프로그램을보고 아래 텍스트 파일 (쉼표로 값을 구분).

상황 :

Write Data to Text File in Excel VBA

워크 시트에 명령 단추를 놓고 다음 코드 줄을 추가

  1. 먼저, 우리는 String 형의의 myFile이라는 변수를 입력 범위의 RNG라는 개체, Variant 형식의 변수라고 cellValue를 선언, 변수 형 정수의 난을 불러 Integer 형식의 변수라고 J. 변형 변수는 모든 유형의 값을 저장할 수 있기 때문에 우리는 여기에 변형 변수를 사용합니다.

Dim myFile As String, rng As Range, cellValue As Variant, i As Integer, j As Integer
  1. 우리는 전체 경로와 파일의 파일 이름을 지정해야합니다.

myFile = Application.DefaultFilePath & "\sales.csv"

참고 : DefaultFilePath 속성은 기본 파일 경로를 반환합니다. 파일 탭에서 기본 파일 위치를 변경하려면, 옵션, 저장을 클릭합니다.

  1. 우리는 선택한 범위와 범위 개체 RNG를 초기화합니다.

Set rng = Selection

다음 코드 줄을 추가하십시오 :

Open myFile For Output As #1

참고 :이 문은 파일에 기록 할 수 있습니다. 우리는 우리의 코드의 나머지 기간 동안 1로 파일을 참조 할 수 있습니다. 파일이 이미 존재하는 경우는 삭제되고 같은 이름의 새 파일이 생성됩니다.

더블 루프를 시작 5..

For i = 1 To rng.Rows.Count

For j = 1 To rng.Columns.Count

주 : rng.Rows.Count (이 예에서는 17)의 행의 수를 반환 rng.Columns.Count (이 예에서 4)의 열 수를 반환한다.

  1. 엑셀 VBA는 변수 cellValue에 셀의 값을 기록한다.

cellValue = rng.Cells(i, j).Value

텍스트 파일에 cellValue의 값을 작성하는 다음 코드 줄을 추가 7..

If j = rng.Columns.Count Then

Write #1, cellValue

Else

Write #1, cellValue,

End If

설명 : 경우 Else 문에, 엑셀 VBA는 새로운 라인을 시작 인해 (쓰기 # 1, cellValue) j는 열 수 (행의 마지막 값을) 같을 때. 콤마 (쉼표)를 사용 쓰기 # 1, cellValue와 값을 구분합니다.

두 루프를 닫을 것을 잊지 마십시오 8..

Next j

Next i
  1. 파일을 닫습니다.

Close #1
  1. 데이터 및 시트에 명령 단추를 클릭하십시오.

결과 :

Write Data to Text File Result