<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    海上月明

    editer by sun
    posts - 162, comments - 51, trackbacks - 0, articles - 8
       :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

    [轉]EXCEL中的多條件查詢(整理)

    Posted on 2011-03-29 18:48 pts 閱讀(2706) 評論(0)  編輯  收藏 所屬分類: Office
    EXCEL中的多條件查詢(整理)from:http://hi.baidu.com/binaryfan/blog/item/54dbf7099971cdc63ac7635f.html
    2009-08-17 21:32

    在EXCEL里面有多個方法可以完成多條件查詢,先來了解合并數組這個概念:

    如果Sheet2是這樣的:

    ,B ,C

    張三,一月,90

    張三,二月,85

    張三,三月,95

    那么If({1,0},Sheet2!A1:A3&Sheet2!B1:B3,Sheet2!C1:C3)就是:

    張三一月,90

    張三二月,85

    張三三月,95

    也可以用Choosen({1,2},Sheet2!A1:A3&Sheet2!B1:B3,Sheet2!C1:C3),結果相同。現在就可以用vlookup來進行多條件查詢了:

    {=vlookup(A1&B1,If({1,0},Sheet2!A1:A3&Sheet2!B1:B3,Sheet2!C1:C3),2,false)}

    還可以用sum函數直線多條件合計功能:

    {=sum((Sheet2!A1:A3=A1)*(Sheet2!B1:B3=B1)*Sheet2!C1:C3)}

    這個功能也很有意思,另外還可以用index+match來解決,有一個值得一提的小技巧是,對于長的公式需要同時按Ctrl+Shift+Enter來給單元內容加上{}

    在理解上述公式之前需要理解if({1,0},......)公式的含義,見下:

    IF({1,0},……)公式的解釋

    把它分解為一塊一塊,把相關的知識一一弄明白,合起來一定能明白。

    1、IF(條件,返回值1,返回值2)

    首先你要弄懂這個函數,如果條件為真,函數的結果為“返回值1”,如果條件為假,函數的結果是“返回值2”:

    if(true,10,100)=10

    if(1,"A","B")="A"

    if(false,20,30)=30

    if(0,"你","我")="我"


    2、{1,2,3,4}是一個數組,一個數組能存儲多個數值,數組的表示方式是{}。

    {1,0}是個水平數組,它有兩個值,一個是1,另一個是0。

    {"張三","李四","王五"}也是一個水平數組,它有三個值。


    3、連接符&也是這個公式中的一個知識點。

    "A" & "B" & "C"="ABC"

    "Aaa"&"Bcd"&"123"="AaaBcd123"


    字符串可以連接,數組也可以連接:

    {1,2,3}&{"A","B","C"}={"1A","2B","3C"}


    單元格區域也可以連接:

    假如A1:A10的數據為1到10,B1:B10的數據為a到j。

    A1:A10&B1:B10的結果就是

    1a

    2b

    3c

    ...

    10j

    再看個實際點的例子: 




    4、再回過來說IF()函數

    當條件是一個單變量時,總代表true和false,即“真”和“假”,它總是返回兩個值當中的一個。

    但是

    但是,當條件不是單變量,而是一個數組時,當條件為{1,0}時,結果如何呢?

    記住,返回的結果與條件一樣,是個數組,而且,與條件數組的列數相同。


    課堂上,老師說:同學們好,我們來做個游戲,當老師舉起左手的時候,你說“語文”,當老師舉起右手的時候,你說100,清楚了沒有?同學們都說清楚了,于是:


    老師舉起左手,一同學回答“語文”:If(左手,"語文",100)="語文"

    老師的話隱含了一層意思,左手為真,右手為假,左手為1,右手為0:If(1,"語文",100)="語文"

    接下去的游戲自然還有:If(右手,"語文",100)=100

    即 If(0,"語文",100)=100


    輪到第三個同學了,老師把兩只手都舉了起來,那么這同學怎么回答?

    也許這位同學會說“老師,你有病?”當然,我更希望這位同學能回答:“語文”,100。

    不是么:IF({左手,右手},"語文",100)={"語文",100}

    前面提過,左手是真,右手是假,寫標準點,就是:

    IF({true,false},"語文",100)={"語文",100}

    也是:IF({1,0},"語文",100)={"語文",100}


    你糊涂了嗎?

    沒有?

    沒有就好。別鉆牛角尖,這個比方打得可能不太合適。


    接著,老師還會把游戲繼續做下去,再把規則改一改:老師舉左手的時候,回答科目,舉右手的時候,回答成績。

    老師舉起左手,同學D回答:語文、數學、英語、計算機

    老師舉起右手,同學E回答:100、90、95、80

    這時,老師把左右手都舉了起來,老師說,如果懂了,請正確說出結果。

    于是,有同學回答:"語文",100;"數學",90;"英語",95;"計算機",80

    老師滿意極了。


    用我們熟悉的方式表現出來,就是:

    =IF({1,0},科目,成績)={"語文",100;"數學",90;"英語",95;"計算機",80}
    主站蜘蛛池模板: 91热成人精品国产免费| 鲁大师在线影院免费观看| 狠狠久久永久免费观看| 亚洲中文字幕乱码AV波多JI| 久草视频免费在线| va天堂va亚洲va影视中文字幕| 国产在线jyzzjyzz免费麻豆| 亚洲激情黄色小说| 成人免费视频软件网站| 午夜在线亚洲男人午在线| 亚洲Av无码国产情品久久| 日日狠狠久久偷偷色综合免费| 亚洲国产精品丝袜在线观看| 精精国产www视频在线观看免费| 亚洲中文字幕无码不卡电影| 久久精品免费电影| 亚洲国产精品成人精品小说| 在线观看无码AV网站永久免费| 91在线亚洲综合在线| 国产免费久久精品| a级毛片免费观看网站| 亚洲AV乱码一区二区三区林ゆな| 999久久久免费精品国产 | 久久精品乱子伦免费| 亚洲视频在线观看地址| 免费无码黄十八禁网站在线观看| 亚洲AV无码国产一区二区三区| 亚洲男人第一无码aⅴ网站| 香蕉成人免费看片视频app下载| 亚洲欧洲精品在线| 亚洲AV永久无码精品一区二区国产| 国产日韩精品无码区免费专区国产| 亚洲国产人成在线观看69网站| 中文字幕无码视频手机免费看| 日韩在线视频免费| 亚洲中文久久精品无码1| 四虎永久免费网站免费观看| 日本在线看片免费| 亚洲av日韩精品久久久久久a| 亚洲gv猛男gv无码男同短文| 毛片a级三毛片免费播放|