當第一個文檔正在保存時,是否可以創建一個宏以在其他工作簿中觸發的一個工作簿上運行?從外部觸發器運行VBA代碼?
一些背景:我將PDF文檔 - 保存我需要的數據 - 轉換爲Excel文檔。轉換隻能用於.xlxs文檔。之後,我可以將此文檔「保存」爲一個支持宏觀的文檔,但整個過程需要更長時間,整個目標是大幅縮短時間。
我有一個宏可以將.xlsx文件中的數據提取到.xlsm文件,所以我可以根據需要操縱數據。當我更新.xlxs文件時自動獲取它是問題所在。
以下是我目前編寫的將.xlsx文件中的數據導入啓用宏的Excel文檔中的代碼。每當我進行更改並保存.xlsx文件而無需打開任何文件時,是否可以自動提取數據?
Sub Import_Test()
Dim Target_Workbook As Workbook
Dim Source_Workbook As Workbook
Dim Target_Path As String
Target_Path = "H:\Test.xlsx"
Set Target_Workbook = Workbooks.Open("H:\Test.xlsx")
Set Source_Workbook = ThisWorkbook
Target_Data = Target_Workbook.Sheets(1).Cells(35, 1)
Source_Workbook.Sheets(1).Cells(2, 1) = Target_Data
Source_data = Source_Workbook.Sheets(1).Cells(2, 1)
Target_Workbook.Sheets(1).Cells(35, 1) = Source_data
Source_Workbook.Save
Target_Workbook.Close False
End Sub
您可以創建一個事件子,當您保存一個工作簿時觸發,但我不知道將數據推送到已關閉的工作簿的方法。無論如何,這將在您的「.xlsx」工作簿中需要一個宏,這將需要成爲「.xlsm」工作簿。這可能可以通過python或其他一些高級語言來完成。一般的做法是創建一個文件觀察器,而不是每次更改「.xlsx」文件時觸發一個腳本。儘管你可以打開工作簿,但你可能會遇到困難。 – Kyle
如何啓動PDF到Excel的轉換?從批處理腳本?然後,您可以創建一個VBS腳本('.vbs'文件),您可以在同一批處理腳本中啓動該腳本,並可以創建Excel對象,並在Excel文件內容上運行,並可能將其另存爲另一個名稱。 。等等。 – trincot
我正在使用Adobe ExportPDF進行轉換。由於受到公司庫存計劃的制約,我的選擇有限。 – Fondyrunner