社区
Microsoft Office应用
帖子详情
excel多条件比较的简单问题
netcup
2008-03-12 05:32:21
A表和 B表结构相同都是如下结构:
品名 规格 产地 价格
阿莫西林 50s 石家庄 5
现在b表中价格列为空,需要给他按匹配A表进行赋值。
当A.品名=B.品名 AND A.规格=B.规格 AND A.产地=B.产地 三个条件都满足时
B.价格=A.价格
...全文
440
21
打赏
收藏
微信扫一扫
点击复制链接
分享
下载分享明细
分享
举报
写回复
21 条
回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
hjun0
2012-03-04
学习了
打赏
举报
回复
赞
zipall
2008-03-14
很遗憾没有帮到你。
打赏
举报
回复
赞
zipall
2008-03-13
[Quote=引用 12 楼 netcup 的回复:]
但是建立的主键拉开也不行,还是只有一个品名啊,而不是他们三个相加的
[/Quote]
请确认一件事情:你的原始A表的数据在A:D列,如果不在,请对6楼公式做相应修改。
打赏
举报
回复
赞
gracexu
2008-03-13
我想了想,还是用高级筛选功能,但是要反复做这件事,
1。在B表里高级筛选,选出跟A表一样的行,把它们用颜色标明,这样就分清楚新的和旧的了。
2。在A表里高级筛选,选出B表中一样的行,复制到一个新的地方。
3。把A表中找出来的行和B表中新的行合并在一起就好了。
打赏
举报
回复
赞
gracexu
2008-03-13
补充一下,高级筛选功能很容易的就能把品名规格产地都一样的价格找出来,
但问题是,如果你数据量很大,找出不完全符合的倒成了一个问题。
打赏
举报
回复
赞
gracexu
2008-03-13
那个If 方法是不对的,逻辑不通。
zipall提的建议很好啊,在A,B表建立唯一的索引栏,然后用vlookup函数就好啦。
用VBA也可以做,但是事情搞复杂啦。
打赏
举报
回复
赞
netcup
2008-03-13
是在不行我导入SQLSERVER做。
打赏
举报
回复
赞
netcup
2008-03-13
非常感谢,去掉$确实变了。
但是经过测试,IF是静态的,只能同一行并且符合条件的才为真,但是有的也符合条件,就是顺序不同,则只要有一个顺序不同,后面的数值全部都是0.
请问如何动态的匹配呢?B表检索A表中相同的呢?
看来一意孤行的方法应该是对的
但是建立的主键拉开也不行,还是只有一个品名啊,而不是他们三个相加的
打赏
举报
回复
赞
zipall
2008-03-13
[Quote=引用 9 楼 netcup 的回复:]
请问怎么样才能让它也一起变讷?
[/Quote]
$去掉就变成相对引用了。
打赏
举报
回复
赞
zipall
2008-03-13
[Quote=引用 8 楼 netcup 的回复:]
刚才测试了下,两个表的品名都是中文,都设置成文本格式,但是明明字一样,EXCEL里却显示两个不相等?
[/Quote]
是否因为空格多少不同的缘故? ctrl+H输入一个空格后全部替换,可以删除所有的空格。
[Quote=引用 8 楼 netcup 的回复:]
另外,一意孤行地方法,新建立的主键还是品名,不是三个合并的啊。
[/Quote]
把列拉宽一点再看看?
打赏
举报
回复
赞
netcup
2008-03-13
发现问题了:
07向医院药品价格表是A表,
B表的价格=IF([07乡医院药品价格表.xls]Sheet1!$B$5=B5,[07乡医院药品价格表.xls]Sheet1!$F$5,0)
Sheet1!$B$5=B5
Sheet1!$F$5
里面的$5不会随着B表的下拉而改变,始终是5,我手动把他改成和B表一样的行,则没问题了。
请问怎么样才能让它也一起变讷?
打赏
举报
回复
赞
netcup
2008-03-13
刚才测试了下,两个表的品名都是中文,都设置成文本格式,但是明明字一样,EXCEL里却显示两个不相等?
另外,一意孤行地方法,新建立的主键还是品名,不是三个合并的啊。
打赏
举报
回复
赞
netcup
2008-03-13
非常感谢一意孤行!!帮助我好几次了!!
打赏
举报
回复
赞
zipall
2008-03-13
在A表的第一列前插入一列,在A1输入公式
=B1&C1&D1
双击填充柄得到一个由3个字段合并在一起的辅助列(最好用高级筛选里的“选择不重复记录”验证一下该列是否有重复值)
在B表的D2输入公式
=VLOOKUP(A2&B2&C2,A!A:E,5,0)
双击填充柄,就得到你要的结果了。
函数的具体含义和用法请参考excel帮助文件。
打赏
举报
回复
赞
netcup
2008-03-13
现在是这个情况:
我们的主管部门给了我们一个XLS文件,里面有几千个品种让我们标注价格,而且工期短工作量大。
去年就已经给了这么一个XLS文件了,格式都一样,就是今年和去年的品种有些差异。
这些官老爷们可不管你什么编码呀什么的,就是很直观的这几列就让你一个个的标注。
因此我们想偷个懒,把去年品名规格产地都一样的价格复制给今年新的文件里就完了。
打赏
举报
回复
赞
netcup
2008-03-13
谢谢一意孤行,最后导入SQLSERVER搞定了,呵呵。不过还是感谢。
打赏
举报
回复
赞
netcup
2008-03-13
谢谢一意孤行,最后导入SQLSERVER搞定了,呵呵。不过还是感谢。
打赏
举报
回复
赞
okexcel
2008-03-13
1楼的方法,我觉得不太对。
如果为区分不同的品名、规格和产地而进行编码的话,那么编码量一定很大,将来管理这些编码也是一件难事。
因此编码前一定要进行科学的规划,使得编码便于记忆和管理。
而且应该的对应的下拉菜单,一层层选择输入,不仅方便而且还不容易出错。
如果数据量不大,可以用VBA进行匹配。
打赏
举报
回复
赞
liujie625
2008-03-12
如此建立表格会很累,建议楼主给所有不同类的药品一个编码,确保每个编码的惟一性,那就很方便,可以试一下VLOOKUP公式
打赏
举报
回复
赞
netcup
2008-03-12
谢谢楼上,呵呵。明天验证后结贴给分。
打赏
举报
回复
赞
加载更多回复(1)
相关推荐
mysql中where后left_MySQL中left join、right join on后面的
条件
和where后面的
条件
的区别...
做项目的时候,遇到的大坑!所以在此记录一下。大概的表结构如下:表a:表b:select a.`name` aname,b.`name` bname from a right join b on a.id = b.a_id and a.`name` in ('嘻嘻','哈哈');产生的结果如下:换一句sql:select a.`name` aname,b.`name` bname from a ri...
mysql join on and_mysql中left join
条件
在on与where时的区别
表结构如图①无
条件
的直接左连表查询select a.*,b.* from a left join b on a.id=a_id;这种情况,a表的所有数据都会拿出来,然后逐一去右表寻找能匹配的记录,找不到记录的则用null填充② where后面增加a表
条件
select a.*,b.* from a left join b on a.id=a_id where a.id>1;与上一种相比,从结果...
[419]sql语法—left join on
多
条件
问题
:如果有A表和B表,A表有a1,a2,a3…an字段,B表有b1,b2,b3…bn字段,想查出同时满足
条件
a1=b1,a2=b2,a3=b3这三个
条件
的所内容? 用内连接: select a.*, b.* from a left join b on a1=b1 and a2=b2 and a3=b3 和楼上那个相比,楼上是在联接的时候就过滤了,我的是联接后过滤,两个结果是不一样的 sel...
java选择根据价格搜索_Java如何实现
多
选项搜索功能(查询数据库)?
参考答案如下实现索功封闭式基金的价格与基金净值之间一般来说是反方向变动的。 ()某市卷烟厂2006年6月生产卷烟10万箱,
多
选其中对外销售9万箱,每箱单价1000元;为扩大销路,该以尽可能少的税务行政费用,项搜询数获取应得的税收,这体现了税收的()。 A.充裕原则B.弹性原据库国债调节国民经济的作用主要表现在()。 A.可以调节国民收入的使用结构B.可以调节国实现索功不考虑以前年度收支的状况或基数...
EXCEL
完成
多
条件
多
结果查找&
多
行
多
列变一列
其实我本来对
EXCEL
是一窍不通的,直到我舅舅给了一串大概1500
多
行的药品供应目录让帮他我查找。当他告诉他们平时都是花1~2天人工填写查找的时候,我当时就惊呆了,心想
EXCEL
设计者肯定已经哭晕在厕所,大家竟然都不用便捷的公式来完成,于是乎我就开始上手了。 首先应该明确需求,拥有一个包含药品名称、规格、供应商、价格的数据库A,表A如下。从表A中我们可以发现,同一药
发帖
Microsoft Office应用
微信扫一扫
点击复制链接
分享社区
下载分享明细
6180
社区成员
2.3w+
社区内容
Microsoft Office应用
社区管理员
加入社区
帖子事件
创建了帖子
2008-03-12 05:32
社区公告
暂无公告