利用Excel函式偷懶

2021-09-21 17:13:30 字數 1374 閱讀 7529

最近真的很忙,那些遠端工單平台的系統非常的老,可能有8年了吧。但神奇的是它們的生命力異常強大,至今依然在服役。雖然它們老了,許多事情已經跟不上時代也力不從心了,但是工作還是要做的。要不它們怎麼來養活這個公司大家庭呢。所以很多時候許多資料都需要人工來統計,這個是非常可怕的事情。為了不讓大家陷入人工手動統計工作的汪洋大海中,我不得不找了個函式使其中乙個需要手動查詢位址並按位址進行分類的excel**變為自動。

這個**我隱藏和摘取了部分資料。需要填寫的就是根據「聯絡位址」然後再填寫每個位址所在的公司劃分的「區域」,黃色部分。這些**資料原本應該由系統完成,可惜系統玩不轉,沒有資料庫維護人員還是什麼其他原因。我們只能完全採用手工輸入的方式,費時又費力,實在是個頭痛的工作。如果我們只是抱怨,那痛苦的依然還是自己。怎麼辦呢?哎,人是要學會偷懶的啦。

函式是死的但人是活的。光會乙個個死記硬背的函式是不行的,要學會聯想。找到每個所需資料的特點性格,然後讓其對號入座。區域的劃分主要是根據具體的路名,這個路名屬於哪個區域就是哪個區域。在這個**中「博興路、滬東新村、楊高北路、加太路、浙橋路、金新路、川橋路、新金橋」這些是我們需要的重點內容。因此需要採用函式mid來找出這些路名。如下圖,s列的內容就是根據mid(l2,5,3)得出的。最後摘取的是3個字元,所以「楊高北路」得出的是「楊高北」,不過不影響我們最終需要的結果。

有了s列做輔助我們就成功了一小半。如下圖所示,還需要乙個單元格做所有路名的集中存放點。並且將路名有意識的按照區域順序進行排放,另外還對於不同區域的路名進行了字型設定。這樣我們就能夠更容易的區分他們了。我們將綠色為「a區域」,紅色為「b區域」,黑色為「c區域」。

為什麼這樣做呢?呵呵,相信有些朋友已經猜到了。首先在t列中用search(s2,$u$1)函式讓剛才s列摘取的路名對u1單元格進行搜尋,將得出s列中路名在u1中的字元位置。最後根據所在字元的位置來判斷屬於哪個區域。下圖中t列得到的就是該結果。

然後我們將輔助的s列、t列中的內容帶入if函式中if(t2<8,"a區域",if(and(t2>8,t2<16),"b區域",if(t2>16,"c區域","未知區域")))。測試一下,果然需要的區域名稱就可以自動得出了。

為了是頁面更加整潔,最後我們可以將輔助列中的內容帶入最終的if函式中,if(search(mid(l2,5,3),$u$1)<8,"a區域",if(and(search(mid(l2,5,3),$u$1)>8,search(mid(l2,5,3),$u$1)<16),"b區域",if(search(mid(l2,5,3),$u$1)>16,"c區域","未知區域")))。輔助列也完成了它們的使命,可以刪除了。

如下圖最終「區域」內容就會自動根據「聯絡位址」進行更改。免去了我們手動輸入的苦惱。

本文** 

kirin

如何利用作業來偷懶?

如何利用作業來偷懶?作業的基本概念 作業 是指使用者向系統提交並要求執行的乙個任務。乙個作業對於乙個或多個程序。前台與後台 前台作業 與使用者進行互動操作。後台作業 不接受終端的輸入,但向終端輸出執行結果。前段和後台執行命令的語法格式 command 前台執行 command 後台執行 comman...

偷懶工具設計之sql2Excel

今天在公司陪山東客戶除錯,遠端登入,我在linux下什麼工具都沒有,用ssh登入伺服器,直接用mysql查詢資料庫,提出記錄中的所有漢字全是亂碼。哎,可惡的公司,不讓我用windows,要不我就可以用putty或者ems了,我ft 甚是不爽之下,我決定自己寫個工具了,把客戶資料庫中的資料全部提取並儲...

Excel 自定函式利用正則提取資料

備忘 利用提取出如下字串 美規 sjtw 12awg 3c 60 zrd004 wh018耐寒15.16m 31l 52n 透明 燈 中的包含的產品長度資訊 程式碼如下 function getlength text dim reg as new regexp with reg global tru...