我是一名辦公軟件愛好者,喜歡Excel,會函數、會基礎操作、也會一點VBA。現在和大家分享、交流一些excel的基礎知識,歡迎愛好的和需要學習的朋友,相互學習、一起進步。如果你喜歡我的文章,請關注我,以便第一時間看到我分享的內容。
今天我分享的兩個函數,是函數公式的左膀右臂,我們先看下面的動圖演示:
演示的公式中用到了兩個函數:ROW和COLUMN,這兩個函數的用途非常廣泛,可以配合其他函數實現很多功能(尤其是和VLOOKUP函數),另外和這兩個函數相似的還有ROWS和COLUMNS函數,也順便介紹下。
函數說明
ROW函數和COLUMN函數的說明詳見下表。
注意:
① ROW和COLUMN函數引用連續區域的時候,雖然均返回數組,但需要注意數組方向:
② ROW(1:3)={1;2;3},數組元素之間用分號【;】隔開,這個是一維縱向數組;
③ COLUMN(A:C)={1,2,3},數組元素之間用逗號【,】隔開,這個是一維橫向數組;
④ 數組方向的意識比較重要,在數組公式的學習中,數組的計算、升維、降維都要用到。
乘法表公式
<code>=IF(ROW()<column>/<code>
① IF函數部分:當列號大於行號時,顯示空白,否則執行COLUMN()&"×"&ROW()&"="&ROW()*COLUMN();
② COLUMN()&"×"&ROW()&"="&ROW()*COLUMN():當前單元格的列號×當前單元格的列號=當前單元格的行號與列號的乘積
其他應用:
一、生成序號
<code>=ROW()-1/<code>
二、條件格式設置偶數行填充顏色
<code> =MOD(ROW(),2)=0/<code>
三、計算1~100之和
<code> {=SUM(ROW(1:100))}/<code>
四、計算兩個日期之間的天數
<code>=ROWS(43466:43830)/<code>
<code>{=COUNT(ROW(43466:43830))}/<code>
五、按從小到大的順序提取數據
<code>=SMALL($A$14:$A$25,ROW(A1))/<code>
六、配合VLOOKUP函數實現複製公式的效果
<code>=VLOOKUP($A38,$A$29:$E$35,COLUMN(B1),)/<code>
七、有趣的數字
為方便截圖,以下案例均用COLUMN函數來實現的,如果要實現縱向的效果,就把COLUMN函數修改為ROW函數即可。
1、按 1列1、2列2、3列3、4列4、5列5、……生成數據
<code>=CEILING(((COLUMN()*8+1)^0.5-1)/2,1)/<code>
<code>=ROUNDUP((SQRT(COLUMN()*8+1)-1)/2,)/<code>
②循環取1到3的連續數,每個數重複2次
<code>=CEILING(COLUMN()/$C$2,1)-$C$3*(CEILING(COLUMN()/($C$2*$C$3),1)-1)/<code>
③取1~∞的連續數,每個數重複3次
<code>=CEILING(COLUMN()/$B$2,1)/<code>
④重複取1~4之間的連續數
<code>=MOD((COLUMN()-1),$B$2)+1/<code>
簡單介紹下【R1C1】引用樣式
在EXCEL中,還有一種【R1C1】的引用樣式,其中【R】是ROW函數的第一個字母,表示【行】;【C】是COLUMN函數的第一個字母,表示【列】,這種引用方式的設置方法詳見下圖:
【R1C1】引用樣式下,單元格的表示方法如下:
注意:
①R1C1引用樣式下,列標由原來的【A、B、C、…】變成了【1、2、3…】,這個是判斷文件是R1C1引用樣式的重要依據。
②這種引用方式不是很常用,可以瞭解下,在遇到這種情況的時候,能夠看得懂就可以。
閱讀更多 上班下班 的文章