2013-10-11 128 views
4

我是Excel VBA的新手。Excel VBA將範圍複製到新工作簿中

我想從工作表輸出複製一個範圍的數據到一個新的Excel工作簿,並保存與E3中的值的新工作簿。

作爲獎勵,我很樂意能也將數據複製到wordpad,並保存爲E3.xml

這裏是VBA我迄今:

Sub CopyOutput() 
Dim myname As String 
mystring = E3 
Dim myselection As Range 

myselection = Sheets("Output").Columns("F").Select 
Set NewBook = Workbooks.Add 
    With NewBook 
     .SaveAs Filename:="C:\Program Files\White Plume\Scenarios\" & myname & ".xls", FileFormat:= _ 
      xlsx, CreateBackup:=False 
    End With 
myselection.Paste 
End Sub 
+0

是否要複製整個'列F'? – Santosh

回答

8

修改,以適應您的具體情況,或根據需要更通用:

Private Sub CopyItOver() 
    Set NewBook = Workbooks.Add 
    Workbooks("Whatever.xlsx").Worksheets("output").Range("A1:K10").Copy 
    NewBook.Worksheets("Sheet1").Range("A1").PasteSpecial (xlPasteValues) 
    NewBook.SaveAs FileName:=NewBook.Worksheets("Sheet1").Range("E3").Value 
End Sub 
+0

謝謝蘭斯。用於複製和粘貼的腳本有效,但我仍然遇到SaveAs問題。我試圖創建名爲A3.xlsx的文件我的VBA行如下:NewBook.SaveAs Filename:= NewBook.Worksheets(「Sheet1」)。Range(「A3」)。值 – user2872317

+0

您需要更具體一些你的問題是?你遇到了什麼錯誤? –

+0

請注意,如果您只是找不到該文件,那麼我的文件夾就已經存在了。您可能也想要指定路徑。 –

相關問題