-
1 # 狼古惑
-
2 # 套路Excel
這個問題的思路如下:一一開啟目標工作簿,修改對應的工作表的單元格內容。
手工操作如是,VBA代替手工而已。
1、建立一個資料夾,用於存放要修改的Excel工作簿。
2、建立一個Excel工作簿,用於操作修改目標Excel工作簿。
如下圖設定:
3、開啟操作工作簿,B2單元格輸入指定的工作表名稱,C2單元格輸入指定的單元格名稱,
D2單元格輸入要修改的內容。
4、程式碼參考如下,附上簡單的程式碼註釋,僅供參考。
4.1 圖片版
Sub FileNames() "遍歷當前路徑所有檔案
"定義變數
Dim sFName As String
Dim sFType As String
Dim 工作表名稱 As String
Dim 單元格地址 As String
Dim 修改內容 As String
工作表名稱 = ThisWorkbook.Sheets("操作表").[b2].Value
單元格地址 = ThisWorkbook.Sheets("操作表").[c2].Value
修改內容 = ThisWorkbook.Sheets("操作表").[d2].Value
sFType = ThisWorkbook.Path & "\要修改的檔案\" "檔案所在的資料夾
sFName = Dir(sFType) "檔名稱
Application.ScreenUpdating = False "關閉螢幕重新整理
Application.DisplayAlerts = False "關閉提示
Do Until sFName = "" "遍歷所有檔案
Set wkb = Workbooks.Open(sFType & sFName) "開啟檔案
"修改檔案內容
wkb.Sheets(工作表名稱).Range(單元格地址).Value = 修改內容
wkb.Close True "關閉工作簿,儲存更改.
sFName = Dir "下一個檔案
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
5、程式碼執行效果見下GIF圖:
-
3 # 小小猿愛嘻嘻
看了大部分的回答,都用的是VBA,這裡我提供一種思路,用python來實現,不到10行程式碼就能搞定,主要用到pandas這個包,實驗環境win10+python3.6+pycharm,主要步驟步驟如下:
為了方便演示,我這裡新建了一個excel資料夾,和執行指令碼放在同一個目錄下便,資料夾裡面放了3個測試用到的excel檔案,主要對這3個excel檔案的單元格內容進行修改,截圖如下:
每個excel檔案的第一個單元格內容都為對應的檔名,如下:
1.安裝pandas,這裡直接輸入命令就行"pip install pandas"就行,如下:
2.修改單元格內容,這裡寫了函式,主要傳遞dir_name,sheet_name,cell_row,cell_colum,cell_value這5個值,其中dir_name是存放要修改的單元格的excel檔案的的資料夾名稱,sheet_name是要修改的單元格所在的工作表名稱,cell_row是要修改的單元格行號,cell_column是要修改的單元格列號,cell_value是單元格要修改的值,程式碼如下,這裡統一修改為“王大錘”:
3.程式執行截圖如下,3個excel檔案的第一個單元格都已成功修改為“王大錘”:
至此,我們就完成了批次修改多個excel檔案中固定工作表的固定單元格內容,程式碼量不多,不到10行程式碼就能搞定,很簡單,相比VBA來說,python程式碼簡單多了,也很好理解,當然,你也可以利用VBA來實現這個功能,這個因人而異,希望以上分享的內容能對你有所幫助吧。
回覆列表
1. 把下面的程式碼COPY儲存為1.VBS
2. 把要修改的檔案放在D:\11裡面
3.修改address="C2",你要改哪個單元格位置就寫哪個
4. 修改Value="我要改的值",要改的值~