Board logo

標題: [發問] 有關開啟舊檔後載入檔案 [打印本頁]

作者: a703130    時間: 2012-8-21 18:43     標題: 有關開啟舊檔後載入檔案

各位前輩,現在因工作上需要

我在 a.xls 分頁1,放個按鈕
點他可以開啟檔案,查閱書上有個命令可用
     Application.Dialogs(xlDialogOpen).Show "*.xls"
這可以跳出對話視窗選取我要的檔案

問題來了,假使我開啟了 b.xls

我要如何開啟檔案後直接將 b.xls 的工作頁放到 a.xls 的最後頁??

而不是又開一個新檔~
請前輩幫忙解惑~謝謝
作者: kimbal    時間: 2012-8-21 22:07

各位前輩,現在因工作上需要

我在 a.xls 分頁1,放個按鈕
點他可以開啟檔案,查閱書上有個命令可用
   ...
a703130 發表於 2012-8-21 18:43
  1.     Sub test()
  2.    
  3.     Dim wbNew As Workbook
  4.     Dim result As Boolean
  5.     '你懂的
  6.     result = Application.Dialogs(xlDialogOpen).Show("*.xls")
  7.    
  8.     '如果取消就下班
  9.     If Not (result) Then
  10.         Exit Sub
  11.     End If
  12.    
  13.     '找出剛打開的WORKBOOK
  14.     Set wbNew = ActiveWorkbook
  15.    
  16.     '一頁一頁地抄到舊WORKBOOK, THISWORKBOOK=舊WORKBOOK
  17.     For Each s In wbNew.Sheets
  18.         s.Copy after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
  19.     Next
  20.    
  21.     '關掉新WORKBOOK
  22.     wbNew.Close (False)
  23. End Sub
複製代碼

作者: GBKEE    時間: 2012-8-22 07:07

回復 1# a703130
  1. Sub Ex()
  2.     With Application.Dialogs(xlDialogOpen)
  3.         If .Show("*.xls") = True Then     '有開啟檔案
  4.             With ActiveWorkbook           '開啟的檔案
  5.                 '複製全部工作表
  6.                 .Sheets.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
  7.                 .Close (False)            '關閉:開啟的檔案
  8.                 '也可用移動方法
  9.                 '.Sheets.Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
  10.             End With
  11.         End If
  12.     End With
  13. End Sub
複製代碼

作者: a703130    時間: 2012-8-22 10:52

另外再請教一個問題
相同方式

如果要載入圖片,並且依照檔案名稱放入固定儲存格內
應該如何做??

例,我ㄧ口氣選取 1~3.png
載入後,自動放在sheet2 的 A1,A5,A11

請前輩們再解惑~謝謝




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)