Excel 2007綜合班Ⅱ-16203班第三課時小結
然後開始小結
第一節:vloopup函式
在學習這個課程之前,對函式真的不瞭解,但是在做課前練習的時候,知道了這個強大的函式。
在Excel的幫助文件中,這個是這麼函式是這麼介紹的。
- VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])VLOOKUP 函式語法具有下列引數 (引數:為操作、事件、方法、屬性、函式或過程提供資訊的值。):
- lookup_value 必需。要在表格或區域的第一列中搜索的值。lookup_value 引數可以是值或引用。如果為 lookup_value 引數提供的值小於 table_array 引數第一列中的最小值,則 VLOOKUP 將返回錯誤值 #N/A。
- table_array 必需。包含資料的單元格區域。可以使用對區域(例如,A2:D8)或區域名稱的引用。table_array 第一列中的值是由 lookup_value 搜尋的值。這些值可以是文字、數字或邏輯值。文字不區分大小寫。
- col_index_num 必需。table_array 引數中必須返回的匹配值的列號。col_index_num 引數為 1 時,返回 table_array 第一列中的值;col_index_num 為 2 時,返回 table_array 第二列中的值,依此類推。
- 如果 col_index_num 引數:
- 小於 1,則 VLOOKUP 返回錯誤值 #VALUE!。
- 大於 table_array 的列數,則 VLOOKUP 返回錯誤值 #REF!。
- range_lookup 可選。一個邏輯值,指定希望 VLOOKUP 查詢精確匹配值還是近似匹配值:
- 如果 range_lookup 為 TRUE 或被省略,則返回精確匹配值或近似匹配值。如果找不到精確匹配值,則返回小於 lookup_value 的最大值。
- 要點 如果 range_lookup 為 TRUE 或被省略,則必須按升序排列 table_array 第一列中的值;否則,VLOOKUP 可能無法返回正確的值。
- 有關詳細資訊,請參閱對區域或表中的資料進行排序。
- 如果 range_lookup 為 FALSE,則不需要對 table_array 第一列中的值進行排序。
- 如果 range_lookup 引數為 FALSE,VLOOKUP 將只查詢精確匹配值。如果 table_array 的第一列中有兩個或更多值與 lookup_value 匹配,則使用第一個找到的值。如果找不到精確匹配值,則返回錯誤值 #N/A。
微軟的所有的幫助檔案,都是非常給力的,以前學VC,用VS的時候,基本上查MSDN就可以解決大部分問題,學Excel的時候也差不多,基本上看一個各個函式的幫助檔案,大致的用法啥也,也都可以瞭解清楚。
最開始看到這個函式的時候,以為近似匹配值是指模糊查詢的意思,用了之後才知道原來不是,是類似於區間查詢的意思。
看到模糊查詢的時候,就讓我想到了lookup函式,第二課時的時候有講到過,貌似有類似的用法。
於是搜尋了一下網上,看到問這個問題的人,真的不少。
看到一個寫得不錯的區別,
1、Vlookup()函式的最大優點就是可以在明細資料無序的前提下進行查詢(但第4個引數必須使用0或False),Lookup()函式就不行。
2、Lookup()函式的最大優點則是可以對資料從左向右、從右向左、從上到下和從左到右查詢,而Vlookup()查詢條件只能是左邊首列,只能是從左向右查詢。
下面的講法是在明細資料排序為前提的:如果明細資料已經排序,那麼Vlookup()和Lookup()這兩個函式我們都可以使用;
3、如果明細資料包含重複記錄,那麼在升序排列的情況下,使用Lookup()函式可以返回重複記錄的最後一條,而Vlookup()則可以返回第一條記錄;
4、由於Vlookup()函式的第3個引數是指定返回的列標,對於多列的資料確定列數就很麻煩,我們可以用Lookup()來代替Vlookup();
5、前面提到Vlookup()只能向右查詢,如果我們查詢條件在右,返回資料在左的話,除了用Index()+Match()來實現外,還可以使用Lookup()來實現。
補充說明:
6、Lookup()函式的最缺點就是資料必須升序排列,而且都是近似查詢,如果被查詢值在範圍中不存在,它將返回最接近的值。
7、Vlookup()支援萬用字元的近似查詢,但Lookup()則不行。
8、前面提到Vlookup()函式第3個引數是偏移列數,但如果我們有時需要相隔固定的列數進行偏移時,那麼用Lookup()函式就不太好處理,這時就最好用Vlookup()函數了。
然後是trim函式
說明是:除了單詞之間的單個空格外,清除文字中所有的空格。在從其他應用程式中獲取帶有不規則空格的文字時,可以使用函式 TRIM。
也就是去首尾空格的意思。
然後是IFERROR函式
介紹說是07新增的,確實很好用的,因為處理資料的時候,一般都是需要返回一個有效的顯示值,就算算出來的結果不對,也需要顯示一定的內容,這時候這個函式就顯得特別有用了。
最後是Row和COLUMN,雖然很簡單,但是在公式運用中,作用卻很大。記住就好了。
第二節:index match
不知道具體要怎麼說,只是覺得這兩個函式配合起來用,很靈活,尤其是match函式,複雜一點的公式裡面,基本上都可以看到它的身影。
match的使用非常地廣泛,最近在研究各種排序的時候,發現到處是match呀,哎
第三節:雙條件查詢
這一節用到的也是前面的函式,但是學到了一個小技巧,如果兩段文字加起來會有重複的話,中間加一個特別的字元就好了
然後做作為的時候,非常傻的中間加了一個?,然後結果怎麼就是不對,才想起來,加?或者*,是為了模糊查詢的。
第四節:查詢引用函式例項
這一節主要學到了兩件事情
第一件事情,就是很多陣列公式裡面的東西,是怎麼快捷輸入的
第二件事情,就是之前班魔很神奇的各種%,原來是課裡面會教的
其它的,因為只是介紹運用,也沒啥特別好說的,然後就準備交我的成果物了哈
課是越來越難了,也越來越有意思了,這三次的課確實讓人獲益良多。