Excel檔案間資料自動處理

更新於 2024/09/28閱讀時間約 4 分鐘

目的:

由A EXCEL檔內取得的資料,經加工處理後,移至另外一個B EXCEL檔內。

來達成兩個檔案間資料的交流存取,並作成巨集執行,以避免人為操作錯誤,提升作業效率。


1 流程說明

1.1 來源A EXCEL檔內之資料複製至 B EXCEL檔

1.2 於B EXCEL檔取得資料,依據需求作加工處理後,產出另一個sheet

1.3 上述兩個作業,設計成兩個巨集與按鈕,只要按下按鈕便自動完成


2 作業說明

2.1 先打開關聯的兩個 EXCEL 檔

2.2 依需求設計如下兩個巨集:

(1)複製來源EXCEL,出力更新資料至目地EXCEL

(2)加工處理產出所需之EXCEL工作表內容

2.3 EXCEL Macro 巨集作成步驟:

(1) 先於EXCEL檔案/ 選項 --> 啟用巨集

(2) 於檔案/ 選項 --> 開啟 " 開發人員"

(3) 開發人員-> 按“錄製巨集” 或 “ 巨集”以便作巨集編輯

依下圖進入巨集編輯

raw-image


2.4配置兩個按鈕

按鈕作成:

EXCEL開發人員-> 插入 -> 表單控制項 ->按鈕圖示新作成->

再於按鈕右鍵 -> 指定巨集


3 實例說明

以某單位志工別服務時數之EXCEL檔內資料為例,經加工編輯處理後,產出所需的工作表(sheet)內容格式,再存至另一個EXCEL 檔

3.1 兩個EXCEL 檔準備

(3.1.1)志工服務時數

(3.1.2) 志工時數條VHPrint.xls

3.2 兩個巨集設計

(3.2.1) 兩個巨集存放於志工時數條VHPrint.xls內,

(3.2.2) 巨集名稱

*M1)巨集UpdateSheet,執行步驟:

STEP1刪除志工時數條VHPrint 檔內 requests sheet內容

STEP2 志工時數條檔 requests sheet 資料範圍選取後,copy取得

STEP3上述取得之資料,paste to 志工時數條VHPrint.xls檔內

執行完後顯示志工人數


*M2)巨集ReduceVHP, 執行步驟:

STEP 1 刪除志工時數條VHPrint檔內 VHPrint sheet del

STEP 2 新VHPrint sheet內資料,由requests sheet取得再加工處理

處理內容包括:

*P1)出力標題列,追加兩個欄位,"社工人員" 與"志工名字"

*P2) 來源檔內,每一志工有三列資料,經加工簡化為一列

來源檔內,每一位志工資料有三列

raw-image


經加工處理簡化為一列,如下

raw-image

(3.2.3) 巨集編輯,設計撰寫,測試執行,於如下環境:

raw-image


3.3巨集按鈕作成

   (3.3.1) 本例兩個按鈕名稱 為

     ”更新時數條內容” ,指定巨集為 巨集UpdateSheet

     ”簡化時數條” ,指定巨集為 巨集ReduceVHP

按鈕作成如下:

raw-image

(3.3.2)  簡化時數條按鈕,按下後,結束會出力加工編輯後之sheet,並顯示志工人數,參考如下

raw-image


4. 改善效果:

4.1 程式自動執行刪除舊資料,取得最新資料,完成加工處理

4.2 按下巨集按鈕,便可輕易完成,提高作業效率

5 將來運用

5.1其他業務可仿效,設計vba讓手動作業,自動處理

5.2 加工編輯後之sheet,可與WORD合併表格,作列印處理


6 本例巨集設計如下 :

6.1 巨集UpdateSheet

Sub 巨集UpdateSheet()
Dim crow As Integer
Dim i As Integer

Application.WindowState = xlNormal
'Windows("志工時數條VHPrint.xls").Activate
'Selection.SpecialCells(xlCellTypeVisible).Select
'Sheets("Requests").Cells.ClearContents

' STEP 1 刪除志工時數條VHP 檔內 requests sheet del

Workbooks("志工時數條VHPrint.xls").Sheets("Requests").Activate
crow = Range("A" & Cells.Rows.Count).End(xlUp).Row
For i = crow To 1 Step -1
Rows(i).EntireRow.Delete
Next i
'MsgBox "VHP del end ??"

' STEP 2 原始志工時數條檔 requests sheet 資料範圍選取後,copy取得

Workbooks("志工時數條.xls").Sheets("Requests").Activate
'---must A1
Range("A1").Select

Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
'MsgBox "copy ? "

' STEP 3 將上述取得之requests sheet資料,paste to 志工時數條VHPrint.xls檔內

Workbooks("志工時數條VHPrint.xls").Sheets("Requests").Activate

Selection.SpecialCells(xlCellTypeVisible).Select
Sheets("Requests").Select
'must A1,paste from to A1----
Range("A1").Select
ActiveSheet.Paste

Application.CutCopyMode = False
'Workbooks("志工時數條VHPrint.xls").Sheets("Requests").Activate
crow = Range("A" & Cells.Rows.Count).End(xlUp).Row
MsgBox "Requests sheet was updated" & "; 志工數=" & (crow - 1) / 3
End Sub


6.2 巨集ReduceVHP

Sub 巨集ReduceVHP()
Dim crow As Integer
Dim outR As Integer

Dim i, iR, pos As Integer
Dim PIC, VS As String

'Windows("志工時數條VHPrint.xls").Activate

' STEP 1 刪除志工時數條VHPrint檔內 VHPrint sheet del

Workbooks("志工時數條VHPrint.xls").Sheets("VHPrint").Activate
crow = Range("A" & Cells.Rows.Count).End(xlUp).Row
For i = crow To 1 Step -1
Rows(i).EntireRow.Delete
Next i
'MsgBox "old VHPrint sheet del end ??"

' STEP 2VHP sheet內資料,由requests sheet取得

Sheets("Requests").Activate
crow = Range("A" & Cells.Rows.Count).End(xlUp).Row

' VHP sheet內row 1 標題列取得
Range("A1:E1").Copy Sheets("VHPrint").Range("A1:E1")
Range("A1:B1").Copy Sheets("VHPrint").Range("F1:G1")

Sheets("VHPrint").Cells(1, 6).Value = "社工人員"
Sheets("VHPrint").Cells(1, 7).Value = "志工名字"

VS = "老人關懷服務 文書"
PIC = "黃X萍"

outR = 2
For i = 2 To crow Step 3

iR = i + 2
' range("A4:E4") copy to 另一sheet之range("A2:E2")
Range("A" & iR, "E" & iR).Copy Destination:=Sheets("VHPrint").Range("A" & outR, "E" & outR)

' 為取得 原始儲存格之格式 先copy取得 F, G之儲存格格式
Range("E" & iR).Copy Destination:=Sheets("VHPrint").Range("F" & outR, "G" & outR)

' Sheets("VHPrint").Range(G,outR)儲存格內容,由Range(A,i)左邊起取出字串至 "】"
pos = InStr(Range("A" & i).Value, "】")
Sheets("VHPrint").Range("G" & outR).Value = Left(Range("A" & i).Value, pos)

Sheets("VHPrint").Cells(outR, 2).Value = VS
Sheets("VHPrint").Cells(outR, 6).Value = PIC

outR = outR + 1
Next
'MsgBox "get ok??"

Sheets("VHPrint").Activate
Range("A1").Select
MsgBox "VHPrint sheet was reduced" & "; 志工人數=" & outR - 2

End Sub

-----by linct-----


avatar-img
58會員
141內容數
樂趣體驗紀錄,沙龍房間有歌唱,生活,科技
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
linct的沙龍 的其他內容
目的: 自動執行設備確認,若發現設備有異常,會即時發出LINE通知至相關人員,以便相關人員可適時排除異常現象,尤其是企業單位內重要應用系統所使用的設備機器群,或有些電腦機器必須24小時運轉之場合。
本作業改善點: (1)對大量多台設備,一併執行確認,節省工時,提高工作效率 (2)可顯示出設備確認結果一覽表,一目了然,可及時對應異常狀況 (3)颱風假或例假日,非上班時段,擔當人員不必至公司,可快速確認 (4)只要確認本作業結果之list,不一定要IT專業人員,IT擔當可正常休假
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
目的: 自動執行設備確認,若發現設備有異常,會即時發出LINE通知至相關人員,以便相關人員可適時排除異常現象,尤其是企業單位內重要應用系統所使用的設備機器群,或有些電腦機器必須24小時運轉之場合。
本作業改善點: (1)對大量多台設備,一併執行確認,節省工時,提高工作效率 (2)可顯示出設備確認結果一覽表,一目了然,可及時對應異常狀況 (3)颱風假或例假日,非上班時段,擔當人員不必至公司,可快速確認 (4)只要確認本作業結果之list,不一定要IT專業人員,IT擔當可正常休假
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
只要會用鍵盤的人,人人都會做EXCEL表格。但是,如果你仔細研究,你或許會發現,工作是否有效率其實可以從一張EXCEL表裡看出來。這篇文章分享幾幾簡單的檢查方法與製作技巧。
在工作中常常會需要用到Excel去整理數據資料,因為近期有在進行作業優化學習,提供網路上10個常用的Excel快捷鍵配置,以及相對應的功能,做為自我複習資料。
Thumbnail
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
Thumbnail
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
Thumbnail
日期與時間在職場上肯定是常常會遇到的一個課題,這集來分享EXCEL資料中,如果有日期與時間,那麼如何快速把他們提取出來 下圖為例,B欄的資料包含了日期與時間,想要將日期提取到C欄,時間提取到D欄,要怎麼做會比較快速呢? ▶️影片教學 看教學影片之前可以先下載練習檔,學中做、做中
Thumbnail
你是否曾經遇到這樣的情況?手上有一張表格,需要根據某個欄位進行分類,但表格又很繁雜,如果手動一個個查找,就需要花費大量時間才能找到想要的資料,這樣實在是太沒效率又容易眼花。 今天,我就來教你一個FILTER 函數快速分類技巧,讓你輕鬆掌握數據,節省時間。
Thumbnail
為什麼要比較Excel 工作表(Worksheet) 工作中,常常會儲存多個同一目的,但不同時間的工作。或者,有時要檢查兩個人做的EXCEL工作表,是否有所不同。當然,若工作表很小,肉眼看是最快的,但是,如果是庫存的大量資料如1萬筆以上的財務資訊等,這時靠肉眼看,速度實在是太慢了,而且也容易出錯。
Thumbnail
Excel是職場上必備的工具之一,它可以用來處理各種數據,從簡單的計算到複雜的分析,都能夠勝任。在Excel中,有一個非常實用的技巧,叫做「微調按鈕」。微調按鈕可以讓你輕鬆地調整數據,而不需要手動輸入。它非常適合用於以下情況:需要頻繁調整數據的情況,例如:產品價格、銷售目標等。
Thumbnail
在職場上,我們經常需要使用 Excel 表格來處理資料,而自動格式設定可以幫助我們快速將資料整理成一致的格式,讓資料看起來更清晰、更有效率。用 Excel 的快捷鍵自動出現自動格式設定技巧,可以讓我們在更短的時間內套用自動格式,讓工作更輕鬆。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
只要會用鍵盤的人,人人都會做EXCEL表格。但是,如果你仔細研究,你或許會發現,工作是否有效率其實可以從一張EXCEL表裡看出來。這篇文章分享幾幾簡單的檢查方法與製作技巧。
在工作中常常會需要用到Excel去整理數據資料,因為近期有在進行作業優化學習,提供網路上10個常用的Excel快捷鍵配置,以及相對應的功能,做為自我複習資料。
Thumbnail
本法省去開啟EXCEL檔,轉存為CSV檔之手動作業,縮短作業時間,提高工作效率,尤其是對象為複數個檔案場合
Thumbnail
這篇文章介紹如何使用VBA程式碼將【包含備註】的Excel檔案轉換為PDF檔。在研究這個問題時,作者花了3個小時多的時間,但後來發現了一個更簡單的方法,這讓作者感到震驚和懷疑人生。最後,作者強調使用他人的智慧來提高自己的能力。文章提供了相關參考文獻和圖片。
Thumbnail
日期與時間在職場上肯定是常常會遇到的一個課題,這集來分享EXCEL資料中,如果有日期與時間,那麼如何快速把他們提取出來 下圖為例,B欄的資料包含了日期與時間,想要將日期提取到C欄,時間提取到D欄,要怎麼做會比較快速呢? ▶️影片教學 看教學影片之前可以先下載練習檔,學中做、做中
Thumbnail
你是否曾經遇到這樣的情況?手上有一張表格,需要根據某個欄位進行分類,但表格又很繁雜,如果手動一個個查找,就需要花費大量時間才能找到想要的資料,這樣實在是太沒效率又容易眼花。 今天,我就來教你一個FILTER 函數快速分類技巧,讓你輕鬆掌握數據,節省時間。
Thumbnail
為什麼要比較Excel 工作表(Worksheet) 工作中,常常會儲存多個同一目的,但不同時間的工作。或者,有時要檢查兩個人做的EXCEL工作表,是否有所不同。當然,若工作表很小,肉眼看是最快的,但是,如果是庫存的大量資料如1萬筆以上的財務資訊等,這時靠肉眼看,速度實在是太慢了,而且也容易出錯。
Thumbnail
Excel是職場上必備的工具之一,它可以用來處理各種數據,從簡單的計算到複雜的分析,都能夠勝任。在Excel中,有一個非常實用的技巧,叫做「微調按鈕」。微調按鈕可以讓你輕鬆地調整數據,而不需要手動輸入。它非常適合用於以下情況:需要頻繁調整數據的情況,例如:產品價格、銷售目標等。
Thumbnail
在職場上,我們經常需要使用 Excel 表格來處理資料,而自動格式設定可以幫助我們快速將資料整理成一致的格式,讓資料看起來更清晰、更有效率。用 Excel 的快捷鍵自動出現自動格式設定技巧,可以讓我們在更短的時間內套用自動格式,讓工作更輕鬆。