2016-10-07 2 views
0

고정 테이블이있는 스프레드 시트를 가지고 있습니다. 내가 누르면이 테이블을 CSV 파일로 내보낼 버튼을 만들고 싶습니다.VBA를 통해 CSV에 Excel 테이블 작성

버튼을 만들고 다음 코드를 구현했습니다. 그러나 버튼을 누르면 파일이 쉼표로만 만들어집니다 (셀의 데이터는 추가되지 않습니다). 내가 뭘 놓치고 있니? 나는 VBA에 처음이다 - 고마워.

Sub CommandButton21_Click() 

Dim FilePath As String 
Dim CellData As String 

CellData = "" 

FilePath = Application.DefaultFilePath & "\Table.txt" 

Open FilePath For Output As #1 


For i = 30 To 34 

For j = 3 To 7 

CellData = CellData + Trim(ActiveCell(i, j).Value) + "," 

Next j 
Write #1, CellData 

CellData = "" 

Next i 

Close #1 



End Sub 
+0

ActiveCell 대신 Cells (i, j) .value를 시도하십시오. – Sorceri

+0

http://www.excel-easy.com/vba/examples/write-data-to-text-file.html –

+0

감사합니다. Sorceri. – Andy

답변

1

Excel은 전체 시트를 .csv 파일로 저장합니다. 셀을 별도로 저장할 필요가 없습니다.

사용이 코드

Sub CSVfile() 
    ActiveWorkbook.SaveAs Filename:="C:\Users\AlexBor\Documents\my_excel_sheet.csv", _ 
    FileFormat:=xlCSV, CreateBackup:=False 
End Sub 

그것은 테이블 형식을 유지, 비어 있지 않은 모든 세포를 저장합니다. 물론 탭 구분 기호와 함께 다른 파일 형식 .txt를 선택할 수 있습니다.

+0

아니요, 셀을 별도로 저장해야합니다. – Andy

관련 문제