2016-05-31 91 views
0

能有人幫 - 我使用這個代碼複製從Excel到Word中的數據:從指定的複製數據的Excel文件word文檔

Sub CreateRapport() 

Dim wdApp As Object 
Dim wd As Object 

On Error Resume Next 
Set wdApp = GetObject(, "Word.Application") 
If Err.Number <> 0 Then 
    Set wdApp = CreateObject("Word.Application") 
End If 
On Error GoTo 0 

Set wd = wdApp.Documents.Add 

wdApp.Visible = True 

Sheets("Rapport").Activate 
Set Rng = ThisWorkbook.ActiveSheet.Range("A1:E76") 

Rng.Copy 

With wd.Range 
    .Collapse Direction:=0     'Slutet av dokumentet 
    .InsertParagraphAfter     'Lägg till rad 
    .Collapse Direction:=0     'Slutet av dokumentet 
    .PasteSpecial False, False, True  'Pasta som Enhanced Metafile 
    End With 
    End Sub 

什麼會我需要在代碼複製修改來自指定Excel文件的數據,例如「C:\ Book.xlsx」(不是ThisWorkbook)?我是VBA中的新手,所以任何提示都會有所幫助。 謝謝!

+0

我想只指定存放excel文件的文件夾(不是特定的文件),所以數據可以直接從它們複製到Word中。謝謝。 – IvanS

回答

0
Sub CreateRapport() 

Dim wdApp As Object 
Dim wd As Object 

On Error Resume Next 
Set wdApp = GetObject(, "Word.Application") 
If Err.Number <> 0 Then 
    Set wdApp = CreateObject("Word.Application") 
End If 
On Error GoTo 0 

Set wd = wdApp.Documents.Add 

wdApp.Visible = True 

Dim wBK as WorkBook 
Set wBK = Workbooks.Open("C:\\test.xlsx") 

wBK.Sheets("Rapport").Activate 
Set Rng = wBK.ActiveSheet.Range("A1:E76") 

Rng.Copy 

With wd.Range 
    .Collapse Direction:=0     'Slutet av dokumentet 
    .InsertParagraphAfter     'Lägg till rad 
    .Collapse Direction:=0     'Slutet av dokumentet 
    .PasteSpecial False, False, True  'Pasta som Enhanced Metafile 
End With 
End Sub 
+0

謝謝。 出於某種原因,我收到一個錯誤,說'該文件無法找到',儘管它在那裏,我可以從指定的位置打開它。 是否有一種方法來指定文件夾與許多Excel文件,我想從中複製一些單元格? – IvanS

+0

看看這個,你會看到'Dir'函數可以讓你瀏覽文件夾中的特定文件:http://stackoverflow.com/questions/33730417/open-multiple-excel-files-with-用戶表格/ 33730522#33730522 – R3uK

相關問題