国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 辦公軟件教程 > 詳細頁面

excel公式技巧一起定位字符串中的數字

excel公式技巧一起定位字符串中的數字

更新時間:2023-12-20 文章作者:未知 信息來源:網絡 閱讀次數:

Microsoft Excel是Microsoft為使用Windows和Apple Macintosh操作系統的電腦編寫的一款電子表格軟件。直觀的界面、出色的計算功能和圖表工具,再加上成功的市場營銷,使Excel成為最流行的個人計算機數據處理軟件。

在很多情況下,我們都面臨著需要確定字符串中第一個和最后一個數字的位置的問題,這可能是為了提取包圍在這兩個邊界內的子字符串。然而,通常的公式都是針對所需提取的子字符串完全由數字組成,如果要提取的數字中有分隔符(例如電話號碼)則無法使用。當然,可以先執行替換操作來去掉字符串中的分隔符,這可能會更復雜些。

本文僅涉及被提取的字符串內包含唯一的數字子字符串的情況。

我們以示例來解。先看一下要提取的數字中沒有分隔符的情形,例如在單元格A1中的字符串如下:

Account No. 1234567890: requires attention

顯然,我們要提取出1234567890。

下面是我們曾經使用的一個公式:

=-LOOKUP(1,-(MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))))&”**0″))

注意,必須在MID函數生成的值的末尾添加“**0”,以保證能夠在任何情況下都得到正確的結果。例如,如果單元格A1中的字符串是:

Account No. 12-Jun: requires attention

使用沒有添加“**0”的公式:

=-LOOKUP(1,-(MID(A2,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A2&1/17)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A2))))))

返回的結果不是12,而是43994,即日期2020-6-12對應的序數。連接字符串“** 0”后,確保類似于“12–Jun”的字符串變為“12–Jun**0”,這樣Excel不會將它們認為數字。同樣,這也適用于與科學記數法格式的數字相似的字符串。

當然,這樣的字符串還必須具有使任何數字保持不變的特性。字符串“**0”等效于“E0”,即表示索引為0的科學計數法,與10 ^ 0一致,因此可保證以這種形式表示的任何數字都將是不變。可以在工作表中進行下列測試來驗證:

=0+(147&”**0″)

返回147。

=0+(147&”**2″)

返回14700。

這種方式比“E0”更好,例如:

=-LOOKUP(1,-(MID(A2,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A2&1/17)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A2))))&”E0″))

得到的結果是36689,因為提取的子字符串為“12-JunE0”,Excel認為是日期2000-6-12。并且,“E”在不同的環境中可能有不同的解釋。

好了!下面讓我們看看一個相似的例子,但要提取的子字符串數字中包含有分隔符:

Account No. 1-234-5678-90: requiresattention

使用上面給出的公式:

=-LOOKUP(1,-(MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))))&”**0″))

返回1,而不是我們想要的1-234-5678-90。

正如上文提出的,先刪除分隔符并不是一件簡單的事:

=-LOOKUP(1,-(MID(SUBSTITUTE(A1,”-“,””),MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))))&”**0″))

乍一看似乎可以,但返回的結果是1234567890。留給我們的是,如何在正確的位置重新插入分隔符?當然,如果所給字符串的格式是固定的,例如電話號碼。然而,即便如此,使用多個REPLACE/SUBSTITUTE函數可能使公式更復雜。

本文尋找的是如何通過確定字符串中的第一個和最后一個數字來提取出子字符串的一種通用解決方案,而不管分隔符是什么、有多少,并且不需要執行替換操作。

在前面的一系列文章中,我們已經找到了一種非常合適的方法來確定字符串中第一個數字的位置,即MIN/FIND函數組合構造。然而,找到一種等效的用于確定字符串中最后一個數字的結構并不容易,能夠實現這一點是關鍵。

對于MID函數的參數num_chars:

=MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)),[someconstruction])

假設希望避免[some construction]由兩個單獨的子句進行減法運算,其中一個是字符串內第一個數字的位置,另一個是最后一個數字的位置。我們首先查看一些確定字符串中最后一個數字的位置的公式結構,然后查看其中的哪一個(如果有的話)也可能有助于發現第一個數字的位置,這可能會很有用。下面是實現此目的的3種主要的公式結構:

公式1:

=MATCH(1,0/ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)))

公式2:

=LOOKUP(1,0/ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))))

公式3:

=MAX(IF(ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1)))))

其中,公式1和公式3是數組公式。

顯然,最好的是公式1,因為它不需要重復ROW子句。但是,這樣的構造還可以用于查找字符串中的第一個數字嗎?如果不行,公式2可以嗎?公式3呢?

我們先嘗試減法運行,即使用確定最后一個數字位置的子句減去用于確定第一個數字位置的子句:

MATCH(1,0/ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)))-MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17))

從而構成解決方案:

=MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)),1+MATCH(1,0/ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)))-MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)))

不錯!但是,可以改進參數num_chars的構造嗎?

一種方法是對上面給出的公式3:

=MAX(IF(ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)),ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1)))))

進行微小的調整。在2010年及以后的版本中,Excel提供了AGGREGATE函數,它不僅可使許多數組(CSE)結構轉換為非CSE,而且還具有標準的CSE公式無法復制的其他優點。

與公式3等價的使用AGGREGATE函數的公式為:

=AGGREGATE(14,6,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1)))/ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)),1)

我們可以利用其來不只生成最大值或最小值,而是生成包含這兩個值的數組。因此,構造公式:

=MMULT(AGGREGATE({14,15},6,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1)))/ISNUMBER(0+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1)),1),{1;-1})

轉換為:

=MMULT({25,13},{1;-1})

其中的13和25分別代表字符串中第一個和最后一個數字的位置。

但是,其仍有一點缺陷,就是需要重復ROW結構。我們能否對此進行改進,找到不需要重復子句的公式構造?是的,可以使用:

MATCH(“*”,T(1/(1+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1))),{1,0})

這類似于AGGREGATE的結構,將一個數組傳遞給其參數,得到兩個結果組成的數組。上面的公式轉換為:

MATCH(“*”,T(1/(1+{“A”;”c”;”c”;”o”;”u”;”n”;”t”;””;”N”;”o”;”.”;””;”1″;”-“;”2″;”3″;”4″;”-“;”5″;”6″;”7″;”8″;”-“;”9″;”0″;””;”r”;”e”;”q”;”u”;”i”;”r”;”e”;”s”;””;”a”;”t”;”t”;”e”;”n”;”t”;”i”;”o”;”n”})),{1,0})

轉換為:

MATCH(“*”,T(1/({#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;3;4;5;#VALUE!;6;7;8;9;#VALUE!;10;1;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!})),{1,0})

轉換為:

MATCH(“*”,T({#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;0.5;#VALUE!;0.333333333333333;0.25;0.2;#VALUE!;0.166666666666667;0.142857142857143;0.125;0.111111111111111;#VALUE!;0.1;1;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}),{1,0})

轉換為:

MATCH(“*”,{#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;””;#VALUE!;””;””;””;#VALUE!;””;””;””;””;#VALUE!;””;””;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!},{1,0})

可以看出,不是錯誤值的就是數字值。指定參數match_type的值為1將為提供數組中最后一個非#VALUE!的位置;為0將提供第一個非#VALUE!的位置。這樣,上面公式轉換成:

{25,13}

現在,可以將此數組傳遞給MMULT函數,以最終得出MID函數的參數num_chars參數的值。最終的公式為:

=MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1/17)),1+MMULT(MATCH(“*”,T(1/(1+MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1))),{1,0}),{1;-1}))


Excel整體界面趨于平面化,顯得清新簡潔。流暢的動畫和平滑的過渡,帶來不同以往的使用體驗。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        91精品国产综合久久精品图片| 亚洲最快最全在线视频| 日韩欧美高清在线| 毛片av一区二区| 欧美一区二区三区男人的天堂| 亚洲福利一区二区| 欧美日韩在线直播| 日本欧美韩国一区三区| 精品国产乱子伦一区| 粉嫩13p一区二区三区| 国产精品免费视频观看| 91丨porny丨中文| 性感美女久久精品| 精品欧美一区二区久久| 国产一区二区美女| 亚洲精品中文字幕在线观看| 欧美色老头old∨ideo| 蜜臀av一区二区三区| 久久久一区二区三区| 99久久久精品| 天天影视涩香欲综合网| 精品人伦一区二区色婷婷| 不卡的av中国片| 日韩高清在线一区| 国产精品色在线观看| 91精品一区二区三区在线观看| 国产伦精一区二区三区| 亚洲精品乱码久久久久久黑人| 欧美本精品男人aⅴ天堂| 亚洲精品国产品国语在线app| 欧美一级高清片| 色综合网站在线| 高清不卡在线观看av| 奇米四色…亚洲| 亚洲男人的天堂av| 久久久不卡网国产精品二区 | 亚洲精品成人在线| 日韩欧美亚洲国产精品字幕久久久 | 日本道在线观看一区二区| 久久国产麻豆精品| 亚洲国产精品欧美一二99| 一区在线观看免费| 久久久噜噜噜久噜久久综合| 欧美另类z0zxhd电影| 99re这里都是精品| 国产成人av影院| 美女在线视频一区| 亚洲综合色网站| 国产精品乱子久久久久| 欧美成人精品3d动漫h| 欧美午夜片在线观看| 成人app网站| 国产成人精品午夜视频免费| 青青国产91久久久久久| 亚洲成a人在线观看| 亚洲精品一二三四区| 综合亚洲深深色噜噜狠狠网站| 欧美成人精精品一区二区频| 欧美一区二区在线视频| 欧美三级在线视频| 91精品福利在线| 日本乱人伦aⅴ精品| 日本精品一级二级| 99精品一区二区| 日本韩国精品一区二区在线观看| 波多野结衣欧美| 99久久精品情趣| 在线影视一区二区三区| 欧美日韩的一区二区| 8v天堂国产在线一区二区| 欧美日韩国产一二三| 欧美日韩精品福利| 欧美性生交片4| 在线播放欧美女士性生活| 91精品国产色综合久久不卡蜜臀| 日韩精品一区二区三区视频播放 | 日韩美女主播在线视频一区二区三区| 欧美日韩在线播放| 日韩三级高清在线| 国产日韩欧美精品综合| 亚洲欧美国产77777| 日本最新不卡在线| 国产综合色在线视频区| 99久久国产免费看| 51精品国自产在线| 国产日韩精品一区二区三区| 亚洲精品免费电影| 久久国产精品99久久久久久老狼| 成人性视频网站| 欧美性大战久久久久久久| 亚洲精品一区二区在线观看| 亚洲三级在线看| 精品综合免费视频观看| 色伊人久久综合中文字幕| 精品日韩一区二区三区| 亚洲精品乱码久久久久久黑人| 日本不卡一区二区三区高清视频| 韩国女主播一区二区三区| 91蝌蚪国产九色| 国产婷婷色一区二区三区四区| 亚洲一区二区欧美| 国产成人综合网| 欧美日韩精品一区二区三区蜜桃 | 亚洲精品一区二区三区99| 亚洲免费电影在线| 韩国欧美国产一区| 欧美精品一卡两卡| 亚洲欧美日韩久久| 精品无人码麻豆乱码1区2区| 欧洲中文字幕精品| 欧美激情中文不卡| 精品在线播放免费| 欧美日韩国产高清一区二区三区 | 国产成人精品亚洲日本在线桃色 | 成人综合激情网| 91精品国产麻豆国产自产在线 | 欧美一区二区三区四区久久| 一色屋精品亚洲香蕉网站| 国产一区二区免费看| 日韩一区二区精品葵司在线| 亚洲国产毛片aaaaa无费看| 99久久久国产精品免费蜜臀| 26uuu国产在线精品一区二区| 日韩精品电影在线| 欧美视频中文一区二区三区在线观看| 中文字幕一区二区三区不卡| 国产一区二区福利| 久久精品在线免费观看| 麻豆精品一区二区三区| 日韩视频在线你懂得| 久久国产精品色| 久久天堂av综合合色蜜桃网| 麻豆精品新av中文字幕| 日韩精品资源二区在线| 蜜桃久久久久久| 欧美刺激脚交jootjob| 精品一区二区三区免费毛片爱| 日韩亚洲欧美综合| 国产在线精品国自产拍免费| 久久亚洲一级片| 国产成人在线电影| 国产精品国产三级国产专播品爱网| 国产电影一区二区三区| 欧美激情综合在线| 91丝袜呻吟高潮美腿白嫩在线观看| 中文字幕人成不卡一区| 欧美日韩国产色站一区二区三区| 午夜精品久久久久影视| 日韩一级成人av| 国产一区二区精品久久91| 国产精品久久久久四虎| 欧美午夜影院一区| 美女爽到高潮91| 久久亚区不卡日本| 成人黄色综合网站| 亚洲超丰满肉感bbw| 日韩欧美aaaaaa| gogogo免费视频观看亚洲一| 亚洲国产日韩综合久久精品| 日韩一区和二区| 懂色av一区二区三区免费观看| 亚洲女同一区二区| 日韩免费福利电影在线观看| 国产99久久久国产精品免费看| 日本一区二区三区四区在线视频| 91麻豆文化传媒在线观看| 日韩精品乱码av一区二区| 欧美激情一二三区| 69堂精品视频| 99久久精品国产网站| 欧美a级一区二区| 亚洲日本护士毛茸茸| 精品三级在线看| 欧美在线看片a免费观看| 国产精品一区二区男女羞羞无遮挡| 日韩码欧中文字| 91精品国产一区二区三区| 波多野结衣一区二区三区| 蜜桃久久av一区| 亚洲成人av一区二区| 国产精品毛片大码女人| 日韩天堂在线观看| 91久久一区二区| 国产精品一区二区视频| 免费在线观看视频一区| 一区二区三区四区激情| 亚洲国产精品激情在线观看| 欧美电视剧免费观看| 欧美日韩高清不卡| 欧美在线不卡视频| 91农村精品一区二区在线| 国产高清成人在线| 狠狠色狠狠色综合系列| 免费的成人av| 日韩国产精品久久| 天天综合色天天| 午夜精品免费在线观看| 亚洲成人动漫精品| 午夜av一区二区三区| 亚洲国产精品久久不卡毛片|