寫了一些Lab給新手練習
以下資料都lab瞎扯的假資料, 不用在意合理性
lab1.xlsx和lab2.xlsx請用以下資料另存csv開啟
座號,科目,分數,考試日期
6,國文,96,2025/2/3
3,英文,76,2025/2/5
3,數學,82,2025/2/7
6,數學,71,2025/2/7
10,英文,65,2025/2/7
2,英文,50,2025/2/5
7,數學,96,2025/2/7
6,英文,78,2025/2/3
8,數學,84,2025/2/7
2,自然,61,2025/2/7
3,國文,87,2025/2/3
4,國文,59,2025/2/3
5,英文,55,2025/2/3
9,數學,64,2025/2/7
4,數學,91,2025/2/7
7,自然,94,2025/2/3
6,自然,78,2025/2/3
2,國文,81,2025/2/3
5,自然,65,2025/2/7
2,數學,96,2025/2/7
3,自然,57,2025/2/7
10,自然,72,2025/2/3
10,數學,87,2025/2/7
8,國文,72,2025/2/5
4,自然,55,2025/2/7
9,英文,72,2025/2/3
7,國文,57,2025/2/3
4,英文,93,2025/2/5
9,自然,76,2025/2/3
8,自然,82,2025/2/3
8,英文,97,2025/2/3
1,數學,56,2025/2/7
1,自然,89,2025/2/7
9,國文,74,2025/2/5
1,國文,60,2025/2/3
5,國文,70,2025/2/3
7,英文,67,2025/2/3
以下內容, 自己存lab4.txt:
{5:F05TPBKTWTPAFMG5066604600}
{6:O0050544640004CITIGB6LPCLS56645055666400045644N}
{4:{500:C5S0E0A044405404}}
{4:
:60:C5S0E0A044405404
:65:466440AUD5
:66F:D640004AUD50046000,50
:65:466440CAD5
:66F:C640004CAD560400,00
:65:466440CHF5
:66F:D640004CHF9056400,09
:65:466440EUR5
:66F:D640004EUR5405600,00
:65:466440GBP5
:66F:D640004GBP5000500,00
:65:466440HKD5
:66F:C640004HKD50040600,58
:65:466440JPY5
:66F:C640004JPY600045600,
:65:466440NZD5
:66F:C640004NZD50565000,40
:65:466440SEK5
:66F:D640004SEK506000,57
:65:466440SGD5
:66F:D640004SGD56700,66
:65:466440USD5
:66F:C640004USD6504500,00
:65:466440ZAR5
:66F:D640004ZAR050000,00
-}
{5:{CHK:FAB0555B464B}}
{S:{MAN:00500}}
以下內容, 自己存lab5.txt:
資料日期: 2025/1/16
報表名稱: ETF除權息資料
股票代號,股票名稱,年度,評價公告日,評價日,除息日,每單位配發金額(元),停止名簿變更日期起,停止名簿變更日期訖,收益分配基準日,收益分配發放日,現金股利殖利率(%),現金股利殖利率(%)
上市0050,元大台灣50,2024,2024/7/1,2024/6/30,2024/7/16,1,2024/7/18,2024/7/22,2024/7/22,2024/8/9,0.5084,
上市0051,元大中型100,2024,2024/11/1,2024/10/31,2024/11/18,2.46,2024/11/20,2024/11/24,2024/11/24,2024/12/12,3.0635,
上市0052,富邦科技,2024,2024/4/1,2024/3/31,2024/4/18,6.43,2024/4/20,2024/4/24,2024/4/24,2024/5/15,4,
上櫃006201,元大富櫃50,2024,2024/11/1,2024/10/31,2024/11/18,0.75,2024/11/20,2024/11/24,2024/11/24,2024/12/12,3.2397,
上櫃006203,元大MSCI台灣,2024,2024/7/1,2024/6/30,2024/7/16,0.9,2024/7/18,2024/7/22,2024/7/22,2024/8/9,0.9683,
上櫃006204,永豐臺灣加權,2024,2024/10/1,2024/9/30,2024/10/24,0.7,2024/10/26,2024/10/30,2024/10/30,2024/11/19,0.5955,
上櫃006208,富邦台50,2024,2024/11/1,2024/10/31,2024/11/18,0.9,2024/11/20,2024/11/24,2024/11/24,2024/12/12,0.8014,
上櫃00660,元大歐洲50,2020,2020/10/8,2020/9/30,2020/10/28,0.36,2020/10/30,2020/11/3,2020/11/3,2020/11/26,1.6158,
上櫃00679B,元大美債20年,2024,2024/11/1,2024/10/31,2024/11/18,0.34,2024/11/20,2024/11/24,2024/11/24,2024/12/12,1.1676,
主管: 經辦:
Lab1. 基本概念
- 開啟Lab1.xlsx, 停留在有字的儲存格
- 按常用/格式化為表格,任選一個格式, 按[確定]
- 按表格設計/表格名稱, 改成”成績” , 按enter
- 按表格設計/轉換為範圍
Lab2. 查詢來源從同Excel
- 開啟Lab2.xlsx, 停留在有字的儲存格
- 按資料/[從表格/範圍]
- 勾選: 我的表格有標題, 按[確定]進入PowerQuery編輯器
- 按右上關閉, 捨棄
- 範圍已轉成表格
- 按資料/[從表格/範圍]
- 點[座號]欄位, 按排序, 可看到資料以座號排序
- 點[考試日期], 按 資料類型/日期, 可看到欄位左邊顯示日曆圖示
- 點[科目]旁的倒三角按鈕, 選國文, 可看到只剩國文資料
- 按右邊[查詢設定] 的[x], 會關閉右邊
- 按上方檢視表/查詢設定, 可看到右邊[查詢設定]
- 改右邊[查詢設定] /[名稱]為”國文成績”, 按Enter
- [查詢設定]列出所有動作的步驟, 點[已排序資料列], 可看當時的資料
- 點[分數]欄右邊的按鈕/數字篩選/大於…, 會跳詢問, 按[插入], 會跳對話框, 在大於右邊輸入60, 按[確定]
- 點到最後一個步驟看結果
- 滑鼠移到[已排序資料列], 按[x], 會跳詢問,按[刪除]
- 點到最後一個步驟看結果
- 點選科目欄位, 按上方 常用/移除資料行
- 點選分數欄位, 按F2, 將欄位名改成”國文”
- 左邊是作有查詢的清單, 可[<]縮小, 按[>]打開, 目前只有[國文成績]一項
- 按上方常用/關閉並載入
- 可看到多一個sheet: 國文成績
- 重新整理
- 儲存, 關閉, 重開Excel
- 出現安全性警告時, 按[啟用]
- 按上方資料/查詢與連線, 可看到PowerQuery清單
- 選國文成績sheet內第2列之後資料列整列, 按右鍵/刪除
- 右邊[查詢與連線]清單內, 在[國文成績]按右鍵/重新整理, 可以看到資料變了
- 按上方資料/全部重新整理, 也可以看到資料變了
- 修改
- 到分數Sheet的表格, 按ctrl+a, 按ctrl+c, 再按ctrl+shift+v, 會看到c欄公式都變成值
- 進入PowerQuery視窗:
- 右邊[查詢與連線]清單內, 在[國文成績]按右鍵/編輯, 即可進入PowerQuery視窗
- 停留國文成績sheet內的表格, 按上方 查詢/編輯, 也可進入PowerQuery視窗
- 左邊查詢按右鍵/重複, 就會複製一份出來
- 在國文成績 (2)上按F2, 改名為: 數學成績
- fx右邊公式的”國文”, 改成”數學”
- 點右邊步驟[已篩選資料列], fx右邊公式的”國文”, 改成”數學”
- 以上2步驟也可以按上方 常用/進階編輯器, 將所有”國文”2個字改成”數學”
- 按上方常用/關閉並載入的倒三角形, 選[關閉並載入至…], 選[只建立連線], 按確定
- 資料載入, 所以不會再出現新Sheet
- 在右邊[查詢與連線]清單內, 在[國文成績]按右鍵/[載入至…], 選[只建立連線], 按確定, 會跳詢問, 按[確定]
- 國文成績sheet內的表格會消失
- 合併
- 右邊[查詢與連線]清單內, 在[國文成績]按右鍵/編輯, 即可進入PowerQuery視窗
- 用第4項方法在左邊查詢清單產生[自然成績]和[英文成績]
- 按左邊清單的自然成績, 按上方 常用/合併查詢的倒三角/將查詢合併為新查詢
- 下方選[國文成績], 聯結種類選[完整外部] , 上方座號和下方座號欄位反白, 按確定
*聯結種類常用有前4項, 各位可都試試 - 出現[合併1]編輯畫面
- 用前2步方法, 合併[數學成績]和[英文成績]
- 按[國文成績]欄位右邊按鈕, 取消勾選[使用原始資料行名稱], 會展開成績
- 用前2步方法, 展開[數學成績]和[英文成績]
- 按上方新增資料行/條件資料行, 新資料行名稱輸入[年度], 輸入如下圖:
- 按ctrl同時點選[考試日期]~[考試日期.3]等4個欄位, 在欄位名上按右鍵/移除資料行
- 用前2步方法建立[學號]處理[座號]~[座號.3]欄位
- 選取年度欄位, 按上方 轉換/日期/年/年
- 按ctrl選取學號和年度欄位, 按上方 轉換/移動/到開頭
- 按上方常用/關閉並載入的倒三角/關閉並載入至…, 選只建立連線, 按確定
- 將國文成績sheet名改成[成績], 停在該sheet, 在右邊[合併1]按右鍵/載入至…, 選表格, 選[目前工作表的儲存格], 清掉內容, 用滑鼠點一下A1, 按確定
- 樞紐
- 到分數Sheet, 按上方 資料/[從表格/範圍], 進入PowerQuery
- 點此次於左方新產生的查詢, 按F2更名”樞紐”
- 選取 [考試日期] 欄位, 按F2, 改名”年度”, 按上方 轉換/日期/年/年
- 選取 [科目] 欄位, 按上方 轉換/樞紐資料行, 選擇[分數], 即產生與[合併1]一樣結果表格, 但由於日期先處理了, 所以同座號且同年度會在同一筆
- 按shift將4個科目欄位選取, 按上方 轉換/取消資料行樞紐, 就會將4個科目當作值放入[屬性]欄
- 附加
- 在左邊”樞紐”按右邊/參考, 會新產生一個查詢, 按F2更名”附加”
- 選[值]欄, 按F2更名[國文]
- [屬性]欄位篩選[英文]
- 刪除屬性欄位
- 按常用/附加查詢, 選[國文成績], 按確定
- 或選三(含)個以上的資料表, 將要附加資料表新增>>到右邊, 按確定
- 附加結果會增加資料列, 雙方[座號]與[國文]欄位名相同, 資料會放同一個欄位, 而年度和考試日期因欄位名不同, 放不同欄位
- 統計
- 到左邊清單選[樞紐], 按右鍵/參考
- 按ctrl選取年度和座號欄位, 按上方 常用/分組依據, 選進階], 設定如下圖, 按確定
- 按總分右邊倒三角, 選遞減排序
- 按上方新增資料行/索引資料行旁倒三角/從1, 即可產生名次
Lab3. 查詢來源從資料夾
- 開新Excel
- 按上方資料/取得資料/從檔案/從資料夾, 選Lab3目錄, 按開啟
- 按合併旁的倒三角/合併與轉換資料
- 選左邊”分數”, 可預覽資料, 按確定, 進入PowerQuery畫面
- 已有新查詢, 也已自動將資料合併
- 按上方常用/關閉並載入
Lab4. 處理文字檔1
- 開新Excel, 按上方 資料/[從文字/CSV], 選擇Lab4.txt
- 分隔符號選[固定寬度], 輸入”5,6,12,15”, 按轉換資料, 會將每列第5碼的字放第1欄, 第6碼~11放第2欄, 第12~14碼放第3欄, 第15碼之後放第4欄
* 每列位置頭一個字是第0碼, 次一字是第1碼, 以此類推… - 按Column2欄右邊倒三角, 在搜尋輸入 “640004”, 按確定
- Column2欄名上按右鍵/移除
- Column4欄名上按右鍵/取代值, 輸入如下圖, 按確定
- 和第5項相同, 選Column1欄名, 按上方 轉換/取代值, 將D取代為空值, 將C取代為-號
- 按Ctrl, 按順序選取Column1和Column4, 按上方 轉換/合併資料行, 新資料行名稱: Amount
- Amount欄名上按右鍵/變更類型/小數
- Column3欄名按一下, 按F2, 更名: “CUR”, 按Enter, 即完成資料處理
- 按上方 常用/進階編輯器, 點一下內容文字, 按Ctrl+A, Ctrl+C, 按win+r, 輸入notepad, 按Enter, 按Ctrl+V把資料貼上記事本, 回到進階編輯器, 按取消
- 點選右邊[查詢設定]清單內的[已合併資料行], 點Amount欄名, 按F2, 更名AMT
- 點選右邊[查詢設定]清單內的[已變更類型2], 會出現錯誤: Expression.Error: 找不到資料表的資料行‘Amount’。
- 將錯誤上方公式內的Amount, 改成AMT, 即可修正
- 到記事本內容按Ctrl+A, Ctrl+C, 按上方 常用/進階編輯器, 點一下內容文字, 按Ctrl+V把資料貼上, 按確定, 即可恢復原來結果
- 按關閉並載入即完成
Lab5. 處理文字檔2
- 開新Excel, 按上方 資料/[從文字/CSV], 選擇Lab5.txt, 按轉換資料, 進入PowerQuery畫面
- 如果有的話, 指到右邊[查詢設定]清單內的[已變更類型], 按X
- 按上方常用/移除資料列/移除頂端資料列, 輸入”4”, 按Enter
- 按上方常用/移除資料列/移除頂端資料列, 輸入”2”, 按Enter
- 按上方檔案/選項及設定/查詢選項/全域/資料載入, 類型偵測 選[永不偵測…], 按確定
- 按上方常用/使用第一個資料列作為標頭, 此時所有欄位類型不會改變
- 按上方常用/使用第一個資料列作為標頭旁的倒三角/以標頭作為第一列
- 按上方檔案/選項及設定/查詢選項/全域/資料載入, 類型偵測 選[一律偵測…], 按確定, 此功能會影響效能, 如果電腦太慢, 建議選[永不偵測…]
- 按上方常用/使用第一個資料列作為標頭, [查詢設定]清單會再多一項[已變更類型]
- 按上方 常用/分割資料行/依字元數, 設定如下圖, 按確定
- 按ctrl點選[每單位配發金額(元) ]和[現金股利殖利率(%)]欄位, 按上方 新增資料行/標準/乘, 會產生2欄相乘的[乘法]欄位
- 按ctrl點選[乘法],[每單位配發金額(元) ]和[現金股利殖利率(%)]欄位, 按上方 新增資料行/統計資料/最小值, 會產生[最小值]欄位
- 按上方新增資料行/自訂資料行, 在右邊可用的資料行, 點2下[乘法], 則自訂資料行公式會出現”= [乘法] “, 在後面輸入”-“, 再點2下[最小值], 即” =[乘法]-[最小值]”, 按確定, 即產生自訂欄位按上方 常用/關閉並載入
Taiwan is a country. 臺灣是我的國家