2014-05-15 101 views
1

2003年,代碼完美運行,我們剛剛更新到2010年,並影響了我們的傳出提議。將多個圖像作爲單獨圖像從一個工作簿複製到另一個工作簿

我一直在尋找多個網站,我已經嘗試了所有的圖片粘貼到一個分組圖像,或給我多個圖片說,圖像無法查看。

圖片將始終位於列L,但它可以是一張圖片或50甚至沒有。所以我需要能夠選擇所有圖像,複製並打開另一個工作簿並粘貼到具有相同格式和單獨圖像的指定列中,而不是作爲我現在正在獲取的單個圖像。任何幫助將不勝感激。以下是我嘗試過的最新代碼,粘貼時仍然會獲得「單個分組圖像」。

Windows(ourName2).Activate 
Sheets("Sheet5").Select 
On Error Resume Next 
ActiveSheet.Pictures.Copy 
Windows("Proposal.xls").Activate 
Sheets("Sheet2").Select 
ActiveSheet.PasteSpecial Range("L7") 

更新,在嘗試使用此代碼就行了Set wbSource = Workbooks("ourName2")

Dim wbSource As Workbook 
Dim wbDest As Workbook 
Dim shSource As Worksheet 
Dim shDest As Worksheet 
Dim shp As Shape 

Set wbSource = Workbooks("ourName2") 'modify as needed 
Set wbDest = Workbooks("MPlanner.xls") 'modify as needed 
Set shSource = wbSource.Sheets("Sheet5") 'modify as needed 
Set shDest = wbDest.Sheets("MAudit") 'modify as needed 

shSource.Pictures.Copy shDest.Range("L7").Paste 

回答

1

這個工作對我來說會引發錯誤:

Sub test() 
    ActiveSheet.Pictures.Copy 
    With Workbooks("temp.xls").Sheets("Sheet1") 
     .Parent.Activate 
     .Activate 
     .Range("L7").Select 
     .Paste 
    End With 
End Sub 
+0

因此,當我打開工作簿時,我根據上面的內容(參見下面的內容)對其進行了更改 - 沒有任何圖片,沒有任何佔位符,沒有任何結果。任何其他想法?視窗(ourName2).Activate 表( 「Sheet5」)。選擇 上的錯誤繼續下一步 ActiveSheet.Pictures.Copy 窗口( 「MPlanner.xls」)。激活 表( 「MAudit」)。選擇 隨着工作簿( 「temp.xls」)。表( 「工作表Sheet1」) .Parent.Activate .Activate .Range( 「L7」)。選擇 .Paste 尾隨着 –

0

相呼應添,這個工作對我來說,導致非 - 組圖片。不應該有任何理由你需要Activate各自的工作表。

問題似乎是您使用PasteSpecial方法而不是Paste。我在家裏有一個我可以驗證的2003盒子,但在2010 Excel中,PasteSpecial方法會將多張圖片作爲單個對象進行過濾,而Paste會將它們分別單獨放入。

Sub CopyAllPictures() 
Dim wbSource As Workbook 
Dim wbDest As Workbook 
Dim shSource As Worksheet 
Dim shDest As Worksheet 
Dim shp As Shape 

Set wbSource = Workbooks("Book12")   'modify as needed 
Set wbDest = Workbooks("Book13")   'modify as needed 

Set shSource = wbSource.Sheets("Sheet1") 'modify as needed 
Set shDest = wbDest.Sheets("Sheet1")  'modify as needed 

shSource.Pictures.Copy 
shDest.Range("L7").Paste 


End Sub 
+0

我正在上設置wbSource 「調試」 錯誤= Workbooks(「ourName2」) –

+0

Dim wbSource As Workbook Dim wbDest As Workbook Dim shSource As Worksheet Dim shDest As Worksheet Dim shp As形狀 集wbSource =工作簿( 「ourName2」) '根據需要修改 集wbDest =工作簿( 「MPlanner.xls」)' 根據需要 集shSource = wbSource.Sheets( 「Sheet5」)修改「根據需要修改 設置shDest = wbDest.Sheets(「MAudit」)'根據需要修改 shSource.Pictures.Copy shDest.Range(「L7」)。Paste –

+0

什麼錯誤信息,具體是什麼?該行上的錯誤表明指定的工作簿目前未打開(或者您可能拼錯了它)。您需要打開工作簿。 –

相關問題