恳请excel高手具体详细完整的解释一下下列公式的意思

\u5e2e\u5fd9\u89e3\u91ca\u4e00\u4e0b\u4e0b\u5217excel\u516c\u5f0f\u7684\u5177\u4f53\u610f\u4e49\uff0c\u8c22\u8c22\u5566\uff01\u91cd\u70b9\u8bf4\u8bf4\u90a3\u4e2a\u7ad6\u6760\u7684\u610f\u4e49

\u7ad6\u6760\u65e0\u610f\u4e49\uff0c\u53bb\u6389\u516c\u5f0f\u4e00\u6837\u597d\u7528\uff0c\u8fd9\u516c\u5f0f\u4e3a\u591a\u6761\u4ef6\u67e5\u8be2\u3002IF({1,0}\u662f\u4e3a\u4e86\u5c06\u4e24\u4e2a\u533a\u57df\u5408\u5e76\u4e3a\u4e00\u4e2a\u533a\u57df.\u65e0\u7279\u6b8a\u96be\u5ea6

\u516c\u5f0f\u7684\u610f\u601d\u662f\uff0c\u5982\u679cC10\u4e3a\u7a7a\uff0c\u5219\u516c\u5f0f\u5355\u5143\u683c\u663e\u793a\u7a7a\uff0c\u5426\u5219\uff0c\u5982\u679cC10\u4e2d\u7684\u503c\u4e3a1\uff0c\u5219\u663e\u793aC9:D9\u7684\u548c\uff0c\u5426\u5219\u663e\u793a\u7684\u662f\uff0cC9:D9\u7684\u548c\u4e0e\u7b26\u53f7\u201c-\u201d\u53caC10:D10\u7684\u548c\u5c111\u8fde\u63a5\u800c\u6210\u7684\u5b57\u7b26\u4e32\u3002

Execl本身具有很方便的排序与筛选功能,下拉“数据”菜单即可选择排序或筛选对数据清单进行排序或筛选。但也有不足,首先无论排序或筛选都改变了原清单的原貌,特别是清单的数据从其它工作表链接来而源数据发生变化时,或清单录入新记录时必须从新进行排序或筛选。其次还有局限,例如排序只能最多对三个关键字(三列数据)排序,筛选对同一列数据可用“与”、或“或”条件筛选,但对不同列数据只能用“与”条件筛选。例如对某张职工花名册工作簿,要求筛选出年龄大于25岁且小于50岁或年龄大于50岁或小于25岁都是可行的,如同时要求性别是男的或女的也是可行的。但要求筛选出女的年龄在22岁到45岁,男的年龄在25岁到50岁时Execl本身具有的筛选功能则无能为力了。再者排序与筛选不能结合使用,即不能在排序时根据条件筛选出来的记录进行排序。例如有一张职工资料清单,其中有的职工已经退休,对在职职工的年龄进行排序时无法剔除已退休职工的数据。
本文试图用Execl的函数来解决上述问题。

一、用函数实现排序

题目

如有一张工资表,A2:F501,共6列500行3000个单元格。表头A1为姓名代码(1至500)、B1为姓名、C1为津贴、D1为奖金、E1为工资、F1收入合计。现要求对职工收入从多到少排序,且在职工总收入相同时再按工资从多到少排序,在职工总收入和工资相同时再按奖金从多到少排序,在职工职工总收入和工资、奖金相同时再按津贴从多到少排序。

方法

G1单元格填入公式
“=if(F2=0,10^100,INT(CONCATENATE(999-f2,999-e2,999-d2,999-c2)))”,
CONCATENATE是一个拼合函数,可以把30个以下的单元的数据拼合成一个数据,这些被拼合的数据之间用逗号分开。用f2、e2等被拼合的数据用999来减,是为了使它们位数相同。(假定任何一个职工的总收入少于899元)。被拼合成的函数是文本函数,CONCATENATE与INT函数套用是为了使文本转换为数字。最外层的if函数是排序时用来剔除不进行排序的记录,在本例中指收入为零的记录。(在上文提到的职工年龄排序,则公式改为“if(f2="退休",10^100,.....)”,即剔除了退休职工。)

第二步把G1单元格的公式拖放到G500单元格(最简便的方法是点击G1单元格后向G1单元格右下方移动鼠标,见到黑十时双击鼠标就完成了G1到G500的填充)。

第三步在在H2单元填入公式“=MATCH(SMALL(G:G,ROW(A1)),G:G,0)”与第二步一样拖放到H501单元格。此公式实际上是把三列公式合成一列公式,ROW(A1)即为A1的行数是1,随着向下拖放依次为2、3、4...,SMALL(G:G,ROW(A1))为G列中最小的数随着向下拖放依次为第2、第3、..小的数,MATCH(SMALL(G:G,ROW(A1)),G:G,0)即为G列各行的数据中最小、第2、第3小等的数据在第几行。

第四步把A1至F1单元格的表头复制到I1至N1单元格,在I2单元格输入公式“=INDEX($A$2:$F$501,$H2,COLUMN(A$1))”INDEX函数是一个引用函数,即把$A$2:$F$501单元格列阵第$H2行第COLUMN(A$1)列的数据放入I2单元格。然后把I2单元格的公式拖放到N2单元格,点击N2单元格后向N2单元格右下方移动鼠标见到黑十时双击鼠标就完成了I2到N501单元格的填充到此全部完成。

以上叙述看似繁杂实际非常简单,只要把A1至F1的表头复制到I1至N1单元格,再分别在G1、H2、I2单元格输入公式然后向下拖放,即使对EXCEL应用不熟练的同志一分锺内便能完成。

对上述程序稍作变化还可得到更多用度。上面例子数据是从大到小排列的,如H列的函数中的SMALL改为LARGE,上面例子数据就从小到大排列了。如H2单元格的公式改为“=IF(O1=1,MATCH(SMALL(G:G,ROW(A1)),G:G,0),MATCH(LARGE(G:G,ROW(A1)),G:G,0))”
并把H2单元格的公式向下拖放。这样在O1单元格输入1上面例子数据是从大到小排列的,O1单元格输入1以外的数上面例子数据就从小到大排列了。

如在H列前插入若干列,如插入一列,则现在的H列输入类似G列的公式,例如

“=if(F2=0,10^100,d2)”,现在的I列的公式改为“=IF(P1=1,MATCH(SMALL(G:G,ROW(A1)),G:G,0),
MATCH(SMALL(H:H,ROW(A1)),H:H,0)))”

即在P单元格输入1以外的值就实现了按奖金大小排序.这样只要通过改变P1(原来的O1单元格)单元格内容的改变就能立即得到按不同要求的排序。

二、用函数实现筛选

题目

如有一张职工名册表,A2:F501,共6列500行3000个单元格。表头A1为姓名代码(1至500)、B1为姓名、C1为性别、D1为年龄、E1为学历、F1职称。现要求对职工的性别、年龄、学历、职称进行交错筛选,例如要求在同一张表上筛选出1、女的年龄在22岁到45岁,男的年龄在25岁到50岁,2、女博士,3、男博士后。

方法

第一步在G2单元格输入公式”=IF(OR(AND(C2="女",D2>=22,D2<=45),AND(C2="男",
D2>=25,D2<=50)),ROW(A1),0)“,在H2单元格输入公式”=IF(AND(C2="女",E2="博士"),
ROW(B1),0)“,在I2单元格输入公式”=IF(AND(C2="男",E2="博士后"),ROW(B1),0)“。在J2单元格输入公式“=IF(K$2=1,LARGE(G:G,ROW(A1)),IF(K$2=2,LARGE(H:H,ROW(A1)),
IF(K$2=3,LARGE(I:I,ROW(A1)),0)))”然后用上述提到的方法向下拖放。G、H、I列的公式的含义就是凡符合筛选条件的行记录下行号否则为零,J列的公式的含义根据K2的数值选择G、H、I中的一列进行排序并把不合条件的行除去。

第二步在K1单元格输文字”筛选选择”,A1到F1表头复制到L1到Q1,在L2单元格输入
公式“=IF($J2=0,0,INDEX($A$2:$F$501,$J2,COLUMN(A$1)))”,然后向右拖放到Q2,再向下拖放。INDEX函数的含义上文已说明。

第三步在P1单元格输入1或2或3便可实现上述三种筛选。

第一步:
ROW(1:1)<COLUMN(A:A),"",
如果行标小于列标,显示空值(1:1表示第一行,下拉公式后会自动改为2:2、3:3……),
否则执行第二步:
行标×列标=(这一侧为字符串)行标×列标(这一侧为结果值)
例如显示为:2×2=4

如果(行号<列号,是为空,否为行号连接(&)列号连接=连接行号*列号

选中A1:I9,单击编辑栏,粘贴公式,最后按CTRL+ENTER

楼上的回答和楼主的提问有什么关联吗?
没看出来。

  • 鎭宠鍚勪綅鑰佸笀鎸囩偣:鍦excel涓,鎬庢牱鏌ユ壘鍦ㄥ悓涓琛屼腑鍚屾椂鍑虹幇鐨勩佷袱涓強浠 ...
    绛旓細涓嬮潰浠嬬粛浣犵粡甯搁亣鍒扮殑鈥滆閲嶅鈥濆拰鈥滃垪閲嶅鈥濆悓涓琛岋紙鍋囧鏁版嵁鍦ˋ1鍒癑1锛,璁╅噸澶嶆暟鎹樉绀洪噸澶嶏紝鍙敤鍏紡涓鐩村彸鎷=IF(COUNTIF($A$1:A1,A1)=1,A1,"閲嶅")鍚屼竴鍒楋紙鍋囧鏁版嵁鍦ˋ1鍒癆10锛,璁╅噸澶嶆暟鎹樉绀洪噸澶嶏紝鍙敤鍏紡涓鐩翠笅鎷=IF(COUNTIF(A$1:A1,A1)=1,A1,"閲嶅")...
  • Excel琛ㄦ牸涓殑闂,鎭宠鍚勪綅甯繖鍝堛傝阿璋㈠暒
    绛旓細搴旇鏄暟鎹被鍨嬩笉鍚 浣犵湅绌虹櫧鐨勬牸瀛愬乏涓婅娌℃湁灏忛粦涓夎 鍙冲嚮 璁剧疆鍗曞厓鏍兼牸寮 鏁板瓧閭d釜閫夐」鍗 璺熷叾浠栬缃垚涓鏍峰簲璇ュ氨鍙互浜 璇曡瘯锛燂紵
  • 璇锋暀EXCEL楂樻墜,濡備綍瀹炵幇琛ㄤ竴浠庤〃浜屼腑鎻愬彇鐩稿簲鐨勬暟鎹
    绛旓細濡傛灉锛岃〃涓韬唤璇佸彿娌℃湁閲嶅鐨勶紝鍙敤Vlookup鍑芥暟锛屾潵寮曠敤锛屽惁鍒欙紝杩樿鐪鍏蜂綋鎯呭喌銆
  • Excel2003濡備綍璁$畻鈥滀紭绉鐜団濆拰鈥滀綆鍒嗙巼鈥?鎭宠楂樻墜涓嶅悵璧愭暀,涓嶈儨鎰熸縺...
    绛旓細鐢ㄨ鏁板嚱鏁帮紝count锛宑ountif锛岃绠楀嚭鎬绘暟鍜屼紭绉鏁帮紝濡傦細=countif(a1:a10,">=90")锛屽彲浠ョ畻鍑篈1鍒癆10鍗佷釜鍗曞厓鏍间腑鏁板煎ぇ浜庣瓑浜90鐨勪釜鏁 鍏朵粬绫绘帹銆傚彲浠ユ煡鐪嬪府鍔╋紝甯姪涓湁姣忎釜鍑芥暟鐨勭敤娉曪紝澶氱湅鐪嬪府鍔╁氨鑳藉浼氫娇鐢
  • 鍚勪綅澶т緺,鎴戞槸OFFICE鐧界棿,鐜板湪鎴戞湁涓涓EXCEL鍑芥暟鐪嬩笉鎳,涓嶇煡閬撳暐鎰忔...
    绛旓細countif鍑芥暟鏄粺璁$鍚堟潯浠剁殑涓暟 鐢╯heet2琛ㄤ腑L6锛歀100鍖哄煙鐨勫ぇ浜庝竴鐧剧殑鏁扮殑涓暟闄や互鍖哄煙J6:J110涓ぇ浜庨浂鐨勬暟鐨勪釜鏁般
  • Excel杩欎釜鍏充簬鏃ュ巻鍒朵綔鐨勫叕寮忔槸浠涔堟剰鎬濆晩?瑙璇︾粏銆鎭宠瑙i噴鐨勮缁嗕竴浜...
    绛旓細浣犲垎瑙e叕寮忓氨鐭ラ亾鎰忔濅簡 =DATE($B$2,$C$2,1) 鏃ユ湡鍏紡DATE(骞达紝鏈堬紝鏃ワ級$涓洪敋瀹氱鍙蜂娇鍏紡涓嶉殢鍗曞厓鏍兼嫋鍔ㄨ屽彉鍔 =MATCH(TEXT(DATE($B$2,$C$2,1),"aaaa"),$B$4:$H$4,0)鏌ヨ鍏紡$B$4:$H$4涓烘煡璇㈣寖鍥达紝涓嬮潰鐨勬槸鏌ヨ鍊 =TEXT(DATE($B$2,$C$2,1),"aaaa") 鏃ユ湡+鏍煎紡...
  • 楂樺垎鎮祻,鎭宠楂樻墜甯垜鍐欎竴涓嬭繖鏍风殑excel鍑芥暟
    绛旓細=IF(OR(A6=A1,A6=A2,A6=A3,A6=A4,A6=A5),"鈽","鈼")
  • excel涓寰涓嬫嫋鍔ㄥ浣曡鍓嶉潰鐨1鍙樻垚2,鑰屼笉鏄悗闈㈢殑T1銆乀2銆乀3鍙樺寲,閲岄潰...
    绛旓細杩欎釜涓嶈兘绠鍗曢氳繃鎷栨嫿鏉ヨВ鍐充簡锛岄渶瑕佷娇鐢ㄥ叕寮忥細鍦ㄧ涓涓崟鍏冩牸涓緭鍏ュ叕寮忥細=ROW(A1)&"椹埌鎴愬姛T1"鐒跺悗鐐逛腑绗竴涓崟鍏冩牸鍙充笅瑙掔殑灏忛粦鐐癸紝涓嬫媺濉厖鍏紡銆傚鏋滀笉鎯宠鍏紡浜嗭紝鍙互澶嶅埗绮樿创涓涓嬶紝绮樿创鐨勬椂鍊欑矘璐撮夐」閫夋暟鍊煎氨鍙互浜嗐
  • excel涓被鍨嬬浉鍚岀殑琛ㄦ牸鎬庢牱鍙犲姞浠栦滑鐨勬暟鎹?鎭宠楂樻墜鏀嫑!!!
    绛旓細濡傛灉鍚勮〃鍗曟牸寮忥紙琛屽拰鍒楋級閮戒竴鏍凤紝鏈濂介兘鍦ㄤ竴涓伐浣滅翱閲岋紝灏卞彟娣诲姞涓涓〃锛屾妸瑕佹眹鎬荤殑鏁版嵁鐢╯um鍑芥暟鍔犺捣鏉ュ氨鍙互浜嗭紝鍏紡杩樺彲浠ョ敤鎷栨嫿鐨勬柟寮忓鍒讹紝寰堟柟渚
  • excel 鎵撳嵃鍏紡闂 鎬ユ眰楂樻墜甯姪 !!
    绛旓細鍙互锛屼綘鍙渶瑕佸皢B11鏍肩殑鍗曞厓鏍煎睘鎬ц缃负鈥滄枃鏈濆嵆鍙傚嵆濡傚浘鎵绀猴細
  • 扩展阅读:连续多选是ctrl加什么 ... 全体起立鼓掌欢迎 ... excel分成多个独立表 ... 电子表格使用技巧36种 ... excel好学吗 要学多久才会 ... 恳请用在什么场合 ... xls表格实用技巧 ... excel高手是什么样子 ... excel高手找工作好找吗 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网