많은 열과 행이있는 xlsx 파일이 있습니다. 새 xlsx 파일을 생성하려면 별도의 열을 선택해야합니다.
내 코드는 다음과 같습니다vbscript를 사용하여 특정 열을 새 xlsx 파일에 저장하십시오.
Public Sub xlsToCsv()
Dim WorkingDir
WorkingDir = "C:\test.xlsx"
Dim fso, FileName, SaveName, myFile
Dim objExcel, objWorkbook
Set fso = CreateObject("Scripting.FilesystemObject")
Set myFile = fso.GetFile(WorkingDir)
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = False
objExcel.DisplayAlerts = False
Set objWorkbook = objExcel.Workbooks.Open(myFile)
With objWorkbook.Sheets(1)
.Range("D87", .Range("D87").End(-4121)).Copy
objWorkbook.Sheets.Add().paste
.Range("E87", .Range("E87").End(-4121)).Copy
End With
dim sheet: set sheet = objWorkbook.Sheets.Add()
sheet.paste
objWorkbook.SaveAs("E:\test.csv"), 23
objWorkbook.Saved = true
objWorkbook.Close
Set objWorkbook = Nothing
Set objExcel = Nothing
Set fso = Nothing
Set myFolder = Nothing
End Sub
call xlsToCsv()
을하지만이 모든 열을 복사하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?
전체 열을 복사하지 않는다고 말하면 어떻게됩니까? –
worbooks 객체의 copy 속성을 일치시킬 수 없습니다. 14 번째 줄에 오류가 있습니다 (objworkbook = objecel.workbooks.open (myfile)을 설정하십시오) – nolags