excel函式使用方法 mid 和find

2021-09-11 13:34:05 字數 2631 閱讀 8704

使用方法

在 excel 中,提取指定長度的字元有兩個函式,分別為mid函式和midb函式,前者用於提取指定長度的字元個數,後者用於提取指定長度的位元組個數。用mid函式提取時,無論是漢字、字母還是數字都算乙個字元;用midb函式提取時,漢字算兩個位元組,數字和字母算乙個位元組。一般情況下,它們從左向右提取;但也可以反向提取,即從右向左提取。

1、返回字元個數的表示式:mid(text, start_num, num_chars)

中文表達示:mid(文字, 起始位置, 提取字元長度)

2、返回位元組個數的表示式:midb(text, start_num, num_bytes)

中文表達示:midb(文字, 起始位置, 提取位元組長度)

3、說明:

a、start_num 為要提取字元的起始位置,它必須大於等於 1,否則會返回錯誤;如果 start_num 大於文字長度,將返回空;如果 start_num 小於文字長度加上 num_chars 大於文字長度,只返回到文字末尾的字元。

b、num_chars 為要提取字元的個數,它必須大於 0,否則會返回 #value! 錯誤。

c、num_bytes 為提取字元的位元組個數,它必須大於 0,否則也返回 #value! 錯誤。

在 excel 中,查詢指定字元在源字串中的位置,既可以用 find函式,也可以用 findb函式,它們都有三個引數,所不同的是,前者把漢字、字母和數字都算乙個字元,後者把漢字算兩個位元組,數字和字母算乙個位元組。

(一)find函式

表示式:find(find_text, within_text, [start_num])

中文表示式:find(查詢文字, 源文字, [查詢開始位置])

(二)findb函式

表示式:findb(find_text, within_text, [start_num])

中文表示式:findb(查詢文字, 源文字, [查詢開始位置])

(三)說明:

1、如果 find_text 為空(""),則返回 1;另外,find_text 不能包含任何萬用字元。

2、start_num 為可選項,如果省略,則預設從第乙個字元開始查詢。start_num 小於等於 0 與大於 within_text 長度,find 和 findb 都返回 #value! 錯誤值。

3、find 和 findb 都區分大小寫,也就是同乙個字母的大寫和小寫算兩個字母。find 的 start_num 無論是漢字、字母還是數字都以乙個字元算;而 findb 的 start_num 漢字以兩個位元組算,字母和數字以乙個位元組算。

將這四種文字的時間格式轉換為小時,方便排序篩選

1天15時4分的公式為

=mid(a1,1,1)*24+mid(a1,find("天",a1)+1,find("時",a1)-find("天",a1)-1)+mid(a1,find("時",a1)+1,find("分",a1)-find("時",a1)-1)/60
19分的公式為

=mid(a5,1,find("分",a5)-1)/60
1天10分的公式為

=mid(a8,1,1)*24+mid(a8,find("天",a8)+1,find("分",a8)-find("天",a8)-1)/60
2時43分的公式為

=mid(a10,1,find("時",a10)-1)+mid(a10,find("時",a10)+1,find("分",a10)-find("時",a10)-1)/60
把四個公式和在一起可以這樣寫

=if(and(isnumber(find("天",a1)),isnumber(find("時",a1)),isnumber(find("分",a1))),(mid(a1,1,1)*24+mid(a1,find("天",a1)+1,find("時",a1)-find("天",a1)-1)+mid(a1,find("時",a1)+1,find("分",a1)-find("時",a1)-1)/60),if(and(not(isnumber(find("天",a1))),not(isnumber(find("時",a1))),isnumber(find("分",a1))),(mid(a1,1,find("分",a1)-1)/60),if(and(isnumber(find("天",a1)),not(isnumber(find("時",a1))),isnumber(find("分",a1))),(mid(a1,1,1)*24+mid(a1,find("天",a1)+1,find("分",a1)-find("天",a1)-1)/60),if(and(not(isnumber(find("天",a1))),isnumber(find("時",a1)),isnumber(find("分",a1))),(mid(a1,1,find("時",a1)-1)+mid(a1,find("時",a1)+1,find("分",a1)-find("時",a1)-1)/60),"錯誤"))))
處理較複雜的excel公式,可以把複雜問題簡單化,把問題首先進行分解,可以分成無法再進行分解的處理單元,然後對各個單元逐個處理,然後合併處理結果;盡量不要試圖通過巧妙的方法,一次性給出解決方法,這樣雖然公式很短,但很耗費時間。

mid函式的使用方法是什麼

mid函式的使用方法 首先開啟excel,在a1單元格中輸入字元 然後在a2單元格中輸入函式 mid a1,4,3 最後結果應為 瀏覽器 mid函式的使用方法 1 下面通過舉例來說明,這裡以excel2007為例,開啟excel,在a1單元格中輸入字元,這裡輸入 360瀏覽器 2 然後在a2單元格中...

excel中如何使用mid函式

使用方法 首先開啟需要進行操作的excel 選中指定單元格 然後在單元格中輸入公式 mid 準備從中提取字串的文字字串,開始位置,字元長度 即可。本教程操作環境 windows7系統 microsoft office excel2010版 dell g3電腦。首先,進入到excel中後,大家可以自己...

SQL 和VB TRIM 函式使用方法

sql 中的 trim 函式是用來移除掉乙個字串中的字頭或字尾。最常見的用途是移除字首或字尾的空白。這個函式在不同的資料庫中有不同的名稱 mysql trim rtrim ltrim oracle rtrim ltrim sql server rtrim ltrim 各種 trim 函式的語法如下 ...