簡體   English   中英

CSV轉換為VBA中的另一個工作簿

[英]CSV into a another workbook in VBA

使用有效代碼的更新問題:

我希望能夠有一個.xlsm文件使用VBA for Excel將csv數據放入第二個.xlsm文件中。 后一個文件可能在多台計算機中打開。 下面是Excel中按鈕背后的代碼,試圖完成此任務:

Sub bad_boy()
Dim wb As Workbook, strFile As String, ws As Worksheet

Set wb = Workbooks.Open("C:\Temp\TestFolder\son1.xlsm") 'set to current worksheet name

Set ws = wb.ActiveSheet

strFile = Application.GetOpenFilename("Text Files (*.csv),*.csv", , "Please select text file...")

With ws.QueryTables.Add(Connection:="TEXT;" & strFile, Destination:=ws.Range("A1"))
     .TextFileParseType = xlDelimited
     .TextFileCommaDelimiter = True
     .Refresh
End With
End Sub

該代碼應該允許用戶瀏覽並從他/她的計算機中選擇csv文件。

您正在嘗試將工作表對象設置為等於字符串常量。 這導致錯誤消息。

您已將ws聲明為Worksheet對象:

Dim ws As Worksheet, strFile As String

但是您正在嘗試為其分配一個Workbook對象。 這將始終引發不匹配錯誤。

Set ws = Workbooks.Open("C:\Temp\TestFolder\son1.xlsm") 

嘗試將該行更改為:

Dim wb as Workbook
Set wb = Workbooks.Open("C:\Temp\TestFolder\son1.xlsm")
Set ws = wb.ActiveSheet

然后刪除Set ws = ActiveSheet

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM