簡體   English   中英

使用VBA將另一個工作簿中的工作表加載到Excel中

[英]Loading a worksheet from another workbook into Excel with VBA

我正在嘗試創建一個子例程,提示用戶選擇一個工作簿,然后將所選工作簿的第一個工作表添加為現有(活動)工作簿中的選項卡。 然后將新選項卡命名為“數據”。 這是我到目前為止使用的代碼:

Sub getworkbook()
' Get workbook...
Dim ws As Worksheet
Dim filter As String
Dim targetWorkbook As Workbook

Set targetWorkbook = Application.ActiveWorkbook

' get the customer workbook
filter = "Text files (*.xlsx),*.xlsx"
caption = "Please Select an input file "
ws = Application.GetOpenFilename(filter, , caption)

ws.Add After:=Sheets(Sheets.Count)

ws.Name = "DATA"

End Sub

此代碼似乎不起作用,並返回以下錯誤:

“ws.Add”方法或With Block未設置。

任何幫助表示贊賞。

謝謝,

您已將ws聲明為工作表, GetOpenFilename將返回文件名。 我建議在這個鏈接中閱讀我的帖子:

這是你在嘗試什么?

注意 :我沒有做任何錯誤處理。 我相信你可以照顧到這一點。

Sub getworkbook()
    ' Get workbook...
    Dim ws As Worksheet
    Dim filter As String
    Dim targetWorkbook As Workbook, wb As Workbook
    Dim Ret As Variant

    Set targetWorkbook = Application.ActiveWorkbook

    ' get the customer workbook
    filter = "Text files (*.xlsx),*.xlsx"
    Caption = "Please Select an input file "
    Ret = Application.GetOpenFilename(filter, , Caption)

    If Ret = False Then Exit Sub

    Set wb = Workbooks.Open(Ret)

    wb.Sheets(1).Move After:=targetWorkbook.Sheets(targetWorkbook.Sheets.Count)

    ActiveSheet.Name = "DATA"
End Sub

暫無
暫無

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

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