好嚇人的一行公式,花了一小時才寫出來

私信回覆關鍵詞【2020】,獲取100+套高顏值圖表模板!


臨近下班,小E突然轉過身來,求助~~


(小E是誰?Office 全能,以優秀和單身著稱於各大秋葉學習班學員群的男子!)


能被萬能的曉陽老師問問題,今天一天的心情都美美噠~


好嚇人的一行公式,花了一小時才寫出來


小E:我碰到一個棘手的 Excel 問題......


小秋:哦?我瞧瞧~

好嚇人的一行公式,花了一小時才寫出來

小E:她說,要 %¥#$%^......


小秋 OS:(竟然還有這種需求?)


01

問題需求


把多名員工的評價表彙總到一個表中。


這一句話,看起來很簡單很輕鬆很 easy 對吧?


但實際情況是,每個員工一個這樣的表(實際表格更更更復雜)——


好嚇人的一行公式,花了一小時才寫出來


光評價指標就有近 200 個!還分自檢和檢查!


而這樣的表有幾十上百個!


然後要彙總到一個表中,橫向排布——

好嚇人的一行公式,花了一小時才寫出來


看到這裡,你有什麼想法嗎?

好嚇人的一行公式,花了一小時才寫出來

02

問題分析


這個問題雖然複雜,不過讓我鬆一口氣的是:


全是公司統一的表格,所以結構是完全一樣的。


它,實際上就是要獲取不同工作表中、相同位置處的單元格內容。


不管怎樣,學員的提問肯定是要幫解決的,所以我耗費了半個小時用一個公式解決了這個問題。


解決方案 1 ◆


以下是公式:

=INDIRECT(E$4&"!"&CHAR(MOD(COLUMN()-5,3)+IF(IFERROR(FIND("自檢",E$3),0),100,103))&(ROW()-1))

▲左右滑動查看完整公式


能看懂嗎?


我來解釋一下~


INDIRECT 函數:


返回由文本字符串指定的引用。此函數立即對引用進行計算,並顯示其內容。


說人話就是,INDIRECT 函數的參數,是指定某個單元格的引用,用這個函數可以獲取到該單元格的內容。


講到這裡,得先搞清楚單元格的引用樣式。


Excel 中單元格引用方式包括 2 種:

A1 引用樣式 和 R1C1 引用樣式。

默認情況下,我們用的都是 A1 引用樣式,由一組(列標+行號)來表示引用的單元格。


A1:表示第 1 列第 1 行的單元格。


當我們去引用其它工作表的單元格的時候,引用單元格的前面會加上該工作表的名稱,並以「!」連接:


彙總!A1:表示「彙總」工作表的第 1 列第 1 行的單元格


而我寫的那個公式後面一長串都是為了動態引用到我們想要的單元格,幾個部分用「&」連接符連接起來。


E$4:為了獲取到工作表名稱,直接以混合引用方式引用第 4 行的單元格;


"!":表示「的」,引用了其它工作表「的」單元格;


CHAR(*):這整個部分都是為了求得想要的列號,並把列號的數字用 CHAR 函數轉為字母(*是代替括號內的所有字符);

ROW()-1:為了求得想要的行號。


將這四部分連在一起,就能引用指定單元格,然後用 INDIRECT 函數來獲取到改單元格的內容了~~~


以上就是對這個公式寫的思路的一個拆解,不知道你看懂幾多呢?


好嚇人的一行公式,花了一小時才寫出來


不過這位同學的問題雖然解決了,可是!我是非常不建議這樣來彙總表的。


這種彙總表一般是為了查看數據方便。


可這個表真的好看嗎?


橫向瀏覽不是我們正常的閱讀習慣,對吧?


所以我的建議是換個思路。


解決方案 2 ◆


使用下拉列表選擇工作人員,數據自動更新,這樣不是更能聚焦某一個人的數據嗎?

好嚇人的一行公式,花了一小時才寫出來


而且!


不把表格設計複雜,寫的公式也沒那麼複雜了~


=INDIRECT(E$4&"!"&CHAR(COLUMN()+95)&(ROW()-1))


這個公式是不是簡潔了很多?


公式的思路都是一樣的,不信,你拆拆看~


這 2 個解決方案,你 Pick 哪一個?


私信回覆關鍵詞【2020】,獲取100+套高顏值圖表模板!


分享到:


相關文章: