第十二讲需要解决以下问题
1了解Match函数语法含义 案例:显示森通公司位置。 操作:MATCH(lookup_value,lookup_array,[match_type]),查找什么,在哪里找,match_type意思是精确查找还是模糊查找,也就是lookup_value相当于vlookup中的第一个参数,lookup_array相当于vlookup查找区域中最左侧的一列,要么选择一行,要么选择一列,会返回需要查找的值在该行或者该列的位置,因此如果看森通公司在B列的位置,输入=MATCH(M2,$B:$B,0),结果返回7,即在B列第7行位置,注意此时是选中整个B列,如果仅仅选中某个区域,则是显示在这个区域相对的位置,如果看森通公司在7行处于什么位置,输入=MATCH(M3,$7:$7,0),结果显示2,即处于B列。 2了解Index函数语法含义 案例:显示B列第7行数据,显示7行第8列数据。 操作:INDEX(array,row_num,[column_num])在哪里引用,引用哪个位置,也是选择某行或者某列,则会选择具体位置的值,因此,要显示B列第7行数据,则输入=INDEX($B:$B,7),显示为森通,如果需要显示7行第7列数据,则输入=INDEX($7:$7,8),结果显示787045。 3Match Index函数与Vlookup函数比较 案例:根据公司名称,引用客户ID。 操作:碰到此种情况,Vlookup无法操作,vlookup可以根据客户ID引用公司名称。我们会发现vlookup做了查找和引用两个功能,Match做了查询,Index是做了引用,如果结合Match函数与Index函数,则可以解决Vlookup函数无法解决的该类问题,输入=INDEX(数据源!$A:$A,MATCH(M2,数据源!$B:$B,0)),这个公式含义是说需要引用客户ID这列,但引用哪个位置呢,引用M2在B列相同的位置。 4使用Match函数与Vlookup函数嵌套返回多列结果 案例:根据客户ID返回公司名称、地址、联系人姓名、电话、城市的值。 操作:输入=VLOOKUP($M2,$A:$K,MATCH(N$1,$A$1:$K$1,0),0),查找M2的值,也就是客户ID,此时需要混合引用,因为不仅仅需要考虑向下拖拽,还需要考虑向右拖拽,但是我希望向下拖拽时行数变化,M列不变,向右拖拽时,行数列数都不变,因此锁定M列,vlookup查找值参数写$M2,第二参数是在哪个区域查找,我们选择A:K区域,而不管是向右还是向下拖拽,都是希望该区域不变,因此绝对引用$A:$K,第三个参数是指引用哪个位置,此时用match函数,结果显示的数字即公司名称、地址、联系人姓名、电话、城市在A:K区域的列数。 5使用Index函数引用图片 案例:根据姓名变化,相片也进行相应变化。 操作:在H2输入=INDEX($B:$B,MATCH($H$1,$A:$A,0)),我们期望会直接引用图片,但是会发现结果为0,此时把该公式复制。点击公式选项卡,定义名称,弹出新建名称对话框,此时在名称中随便输入,我们输入zhaopian,引用位置把刚才复制的共识粘贴上去,即=INDEX($B:$B,MATCH($H$1,$A:$A,0)),点击确认,再点击新建选项卡,照相机功能,如果没有照相机功能,可以在文件-选项中把该功能勾选出来,此时随便点击Excel某处,照相机功能会拍照,形成一个图片,把该图片放到H2位置,可以按住alt键进行图片大小选择,会自动适配单元格,此时会发现,选中的图片在输入框有个公式,把公式改为=zhaopian,即刚才公式选项卡定义的名称,点击回车,此时图片就可以根据姓名来进行变化,注意,相片并不是在H2单元格上,而是在刚才用照相机拍的图片上,可以把图片移到任何位置,选择不同的姓名,相片依旧会变化。 |
|