Excel MID 和 MIDB 函數教學 ?
MID 和 MIDB 函數都用來從字串中提取指定位置開始的字符,但它們在處理字符和字節數量的方式上有所不同,特別是當涉及到雙字節字符集(DBCS)(如中文、日文、韓文等)時。
MID 函數
功能
MID 函數用來從字串的指定位置開始提取指定數量的字符。
語法
MID(文字, 開始位置, 提取長度)
- 文字(必填):要從中提取字符的字串或儲存格。
- 開始位置(必填):指定要開始提取的字符位置,從 1 開始計算。
- 提取長度(必填):要提取的字符數量。
返回值:從指定位置開始的字符,根據指定的長度進行提取。
範例
| A 列 | B 列(公式) | C 列(結果) | 說明 |
|---|---|---|---|
| Hello | =MID(A1, 2, 3) | ell | 從第 2 個字符開始提取 3 個字符 |
| Excel 2025 | =MID(A2, 7, 4) | 2025 | 從第 7 個字符開始提取 4 個字符 |
| 你好世界 | =MID(A3, 2, 2) | 好世 | 從第 2 個字符開始提取 2 個字符 |
注意:
- 開始位置是從 1 開始計算的,即字串中的第一個字符位置為 1。
- 如果
提取長度超過剩餘的字符數,MID函數會返回從開始位置到字串結尾的所有字符。
MIDB 函數
功能
MIDB 函數的作用與 MID 類似,不過它是根據字節數來提取字符,並且特別適用於處理雙字節字符集(DBCS),如中文、日文、韓文等。在這些語言中,每個雙字節字符佔用 2 個字節。
語法
MIDB(文字, 開始位置, 提取字節數)
- 文字(必填):要從中提取字符的字串或儲存格。
- 開始位置(必填):指定要開始提取的字節位置,從 1 開始計算。
- 提取字節數(必填):要提取的字節數量。
返回值:從指定字節位置開始的字串,根據指定的字節數量進行提取。
範例
| A 列 | B 列(公式) | C 列(結果) | 說明 |
|---|---|---|---|
| Hello | =MIDB(A1, 2, 4) | ell | 從第 2 個字節開始提取 4 個字節 |
| Excel 2025 | =MIDB(A2, 7, 6) | 2025 | 從第 7 個字節開始提取 6 個字節 |
| 你好世界 | =MIDB(A3, 4, 4) | 世界 | 從第 4 個字節開始提取 4 個字節 |
注意:
- 開始位置是從 1 開始計算的,但
MIDB是以字節為單位進行計算的,對於雙字節字符,每個字符會佔用 2 個字節。- 如果字串中包含雙字節字符,
MIDB會根據字節數量來提取字符。
MID 和 MIDB 的差異
| 特性 | MID | MIDB |
|---|---|---|
| 功能 | 根據字符數提取字串中的部分 | 根據字節數提取字串中的部分 |
| 適用範圍 | 適用於所有字符 | 特別適用於處理雙字節字符集 |
| 計算單位 | 以字符為單位 | 以字節為單位(每個雙字節字符佔 2 字節) |
結論
MID函數:用來提取字串中的字符,不管是單字節字符還是雙字節字符,提取的是字符。MIDB函數:用來提取字串中的字節,特別適用於處理雙字節字符集(如中文、日文等)。
如果你的資料中有雙字節字符,並且需要根據字節數來提取字符,則應使用 MIDB。如果只處理普通的字串,則使用 MID。