如何在另一个excel里按要求取数

如图,是源文件,我需要将其中的B列数字取到另外一个表格里去,本来我是直接输入=,然后用鼠标点击相应表格的,但是源文件有时候会多一行或者少一行,这样就会取数不准确。比如我想另一个表格里的A1等于101的数(即5.768)、A2等于102+101的数(5.768+6.77)……这样的要求要用怎样的函数啊?另外那个表格里的数要求只保留一位小数,能用什么函数来嵌套?求大神指教

excel中取数可以按照不同的要求选择合适的函数,可用的函数有很多,比如index、offset、lookup、vlookup、hlookup、if、small、large、max、min等等,下边举几个常用的例子:

    求最大(或最小)值,使用函数max(或min);

    求第几大(或第几小)的值,使用函数large(或small);

    如果条件成立,则返回某值,否则返回另外一个值,用if;

    返回某个特定条件对应的值,可以使用index、offset、vlookup等;



    如果给定的数字满足一个条件范围,则返回某一个值,lookup。

至于函数的具体用法还需要自己慢慢学习,excel中有函数帮助,百度函数名称也可以搜到学习资料。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-24
假设这个源文件和另一个工作表是在同一个工作薄中,源文件的表名为SHEET1
则另一个工作表
A1单元格写入公式
=ROUND(VLOOKU(101,SHEET1!A:B,2,),1)
A2单元格写入公式
=ROUND(A1+VLOOKUP(102,SHEET1!A:B,2,),1)

http://office.microsoft.com/zh-cn/excel-help/RZ101862716.aspx?section=3本回答被网友采纳
第2个回答  推荐于2016-09-22
源数据在Sheet1。
Sheet2的A1输入
=ROUND(SUMIF(Sheet1!A:A,101,Sheet1!B:B),1)

=ROUND(VLOOKUP(101,Sheet1!A:B,2,),1)
Sheet2的A2输入
=ROUND(SUMPRODUCT((Sheet1!A1:A5={101,102})*Sheet1!B1:B5),1)
均回车。追问

用vlookup函数说值错误,是不是对源文件单元格格式什么的有要求,那些101这类的是按文本形式存储的,是这个有影响吗?还是因为这边源文件表格表头有些是合并单元格什么的?
不过sumif函数倒是可以,不知道这个跟vlookup有没有太大差别,没什么差别的话用这个就算了。
下面那个sumproduct的函数也不行,是不是也跟单元格格式有关?

追答

这跟不同格式有关。同样的数字,一个是文本,一个是数值,就会匹配不到而显示错误值。

你说你的那些101这类的是按文本形式存储的,肯定有关系。

可在另一单元格输入1——复制该单元格——选A列数据区域——右键——选择性粘贴——运算:乘(点选)——确定。

或选A列——菜单栏——数据——分列——下一步——下一步——列数据格式:常规(点选)——完成。

也许单元格里面带空格:选A列——Ctrl+H——查找内容:输入一个空格——替换为:不输入什么——全部替换。

再计算,B列也同样设置。


看你的抓图,数据靠右,就不是文本了(除非你专门设置右对齐)。

本回答被提问者采纳
第3个回答  2013-09-24
a1输入
=vlookup(101,sheet1!$a$1:$b$10,2,)
a2输入
=vlookup(101,sheet1!$a$1:$b$10,2,)+
=vlookup(102,sheet1!$a$1:$b$10,2,)
其中sheet1!$a$1:$b$10根据你所在的工作表确定,最简单方法就是按=点工作表获取
相似回答