|
发表于 2007-7-9 19:31:20
|
显示全部楼层
来自: 中国北京
可以用VLOOKUP函数
7 O7 |6 K! z$ r. J# f, Q把表1中符合的数据挑出来自动添入表2) |* c; o: N) }; L4 y' D" [( W3 {& p
$ G/ M$ _& W1 i. ^0 W, T$ f7 Z
以下是VLOOKUP的帮助信息& h9 C, ~" Q: J5 M+ g* i" v) D
0 ~2 G* \, k% i1 MVLOOKUP参阅( E* s; c/ Q( s2 D1 u) x& Z" U
在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值位于数据表首列时,可以使用函数 VLOOKUP 代替函数 HLOOKUP。' i0 [# e9 ^3 h: H7 V& X/ D, m* r
语法 z# Y3 R. o: G1 [* c. A$ B
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)$ Y3 X0 a, c: t' R
Lookup_value 为需要在数据表第一列中查找的数值。Lookup_value 可以为数值、引用或文字串。/ a+ _8 z! h# {1 }! X5 O0 |
Table_array 为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用,例如数据库或数据清单。 如果 range_lookup 为 TRUE,则 table_array 的第一列中的数值必须按升序排列:…、-2、-1、0、1、2、…、-Z、FALSE、TRUE;否则,函数 VLOOKUP 不能返回正确的数值。如果 range_lookup 为 FALSE,table_array 不必进行排序。( ^; v# n. F g! ^
8 y h* o. b' l W
可以通过在“数据”菜单中的“排序”命令中选择“递增”选项将数值按升序排列。* }8 e( m9 n. W+ m
, R. X5 M) x1 E; \4 A nTable_array 的第一列中的数值可以为文本、数字或逻辑值。
# E! V# g$ ?) [1 |8 x- 不区分文本的大小写。
Col_index_num 为 table_array 中待返回的匹配值的列序号。Col_index_num 为 1 时,返回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num 小于 1,函数 VLOOKUP 返回错误值 #VALUE!;如果 col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值 #REF!。' e6 u. d+ _7 \- P, S" C/ ?
Range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。# U% D' M( [6 w* F/ r4 d2 _
说明 如果函数 VLOOKUP 找不到 lookup_value,且 range_lookup 为 TRUE,则使用小于等于 lookup_value 的最大值。
* S+ V: u% n B9 U' _
2 m7 F: k, s% }/ Z( c如果 lookup_value 小于 table_array 第一列中的最小数值,函数 VLOOKUP 返回错误值 #N/A。
; d& c: S5 ?7 b3 @4 D8 z: J- 如果函数 VLOOKUP 找不到 lookup_value 且 range_lookup 为 FALSE,函数 VLOOKUP 返回错误值 #N/A。 / T1 p3 m3 x4 P3 f
示例3 p+ G H# H6 r, u/ ?& q6 D
http://mk:@MSITStore:c:\\Program%20Files\\Microsoft%20Office\\Office\\2052\\xlmain9.chm::/html/images/awfvlkup.bmp0 c6 p& \9 O2 f6 h8 q" u
在上述工作表中,区域 A4:C12 的名称为 Range:$ J; ?1 w9 z' ^$ i4 q
VLOOKUP(1,Range,1,TRUE) 等于 0.946
' Z% E, N) v2 h! wVLOOKUP(1,Range,2) 等于 2.17
3 G" a3 E4 x6 c; w0 rVLOOKUP(1,Range,3,TRUE) 等于 100, O/ l, u" x5 D5 k
VLOOKUP(.746,Range,3,FALSE) 等于 200
) P; }- H+ q. S" CVLOOKUP(0.1,Range,2,TRUE) 等于 #N/A,因为 0.1 小于 A 列的最小数值
* y+ q# e, G9 Q5 ?, ^0 {VLOOKUP(2,Range,2,TRUE) 等于 1.71
: u3 x! M. G+ ]! X% F' o9 W, x0 J( C L, X
[ 本帖最后由 jyxz4 于 2007-7-9 19:32 编辑 ] |
评分
-
查看全部评分
|