簡體   English   中英

將列復制到VBA中的新工作簿表

[英]Copying a column to a new workbook sheet in VBA

我正在嘗試將現有列從工作表復制到新工作簿中的列。

我試過的代碼:

Set NewBook = Workbooks.Add
Sheets("Sheet1").Columns(1).Copy Destination:=NewBook.Sheets("Sheet1").Columns(2)

這是創建工作表但沒有復制值! 如果我復制到同一工作簿中的另一個工作表,此代碼可以工作。

我應該如何創建在一個新的工作表NewBook在和目標列sheet

您必須記住舊書,否則Sheets("Sheet1").Columns(1)將引用新添加的Sheet1的第一列,因為此時它是ActiveWorkbook (所以你實際上復制了一些東西,但是東西是空列):

Sub qwerty()
    Set w1 = ActiveWorkbook
    Set NewBook = Workbooks.Add
    w1.Sheets("Sheet1").Columns(1).Copy Destination:=NewBook.Sheets("Sheet1").Columns(2)
End Sub

編輯#1:

這將重命名新工作簿中的工作表,然后執行復制:

Sub qwerty2()
    Set w1 = ActiveWorkbook
    Set NewBook = Workbooks.Add
    ActiveSheet.Name = "Report"
    w1.Sheets("Sheet1").Columns(1).Copy Destination:=Columns(2)
End Sub

暫無
暫無

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

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