Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 6074|回复: 12

[已解决]区分美元和日元汇率——怎样把月初的汇率自动拷贝到库存表中相应年度月份的表格内(库

[复制链接]
发表于 2011-6-2 08:29 | 显示全部楼层 |阅读模式
5学分
大师您好:
上次提交的表忘记区分日元汇率和美元汇率?


我的想法是怎样把月初的汇率自动拷贝到库存表中相应年度月份的表格内(库存汇率)。
我现在是每次手工敲入的,常出现错误,所以请帮我找一个巧妙的办法可以吗!
麻烦再一次请教!


或者还有别的好方法?


再次感谢!
最佳答案
2011-6-2 09:51
回复 zfc7777 的帖子

=IF(F2="","",SUM((DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)*IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25)))

1  DATE(YEAR(D2),MONTH(D2),1)  根据D2的日期得到一个新日期,日期的年、月与D2的日期一致,日为1。
2  (DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)  上一步得到的日期分别与月初汇率表的A2:A25单元格进行比较,相等的得到TRUE,不等的得到FALSE
3  MID(工作表!F2,8,3)="USD"  提取工作表F2单元格第8位开始的3位字符,并与USD字符比较
4  IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25)  判断 步骤3的比较的结果,如果相等返回B2到B25,不等返回C2和C25。用来返回不同的汇率
5  SUM((DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)*IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25))  将步骤2和步骤4得到的结果相乘,返回不同的汇率结果。
6  外面套上IF(F2="","",步骤5公式)  目的是当F2是空单元格时,结果也返回空。

* 在这里就是乘号的意思

步骤5的公式为典型的条件求和公式。

自动将汇率填入工作表中(公式设置)区分美元和日元.rar

7.79 KB, 下载次数: 5

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-6-2 09:05 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2011-6-2 09:15 | 显示全部楼层
那么的帅:
这就是我想要的呀!您能否再帮我讲解一下,现在不急,等有时间的话,我现在照葫芦先画个瓢吧!但是我还是想搞明白!
{=IF(F2="","",SUM((DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)*IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25)))
为什么那个  {  符号我复制就不显示了。在往下帮帮我可以吗!
回复

使用道具 举报

 楼主| 发表于 2011-6-2 09:21 | 显示全部楼层
不对那个{  符号 不是复制没有了,而是我不理解怎么弄出来的?
回复

使用道具 举报

发表于 2011-6-2 09:23 | 显示全部楼层
要按ctrl+shift+回车键,三键一起按
回复

使用道具 举报

 楼主| 发表于 2011-6-2 09:30 | 显示全部楼层
* 符号是什么意思
回复

使用道具 举报

发表于 2011-6-2 09:51 | 显示全部楼层    本楼为最佳答案   
回复 zfc7777 的帖子

=IF(F2="","",SUM((DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)*IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25)))

1  DATE(YEAR(D2),MONTH(D2),1)  根据D2的日期得到一个新日期,日期的年、月与D2的日期一致,日为1。
2  (DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)  上一步得到的日期分别与月初汇率表的A2:A25单元格进行比较,相等的得到TRUE,不等的得到FALSE
3  MID(工作表!F2,8,3)="USD"  提取工作表F2单元格第8位开始的3位字符,并与USD字符比较
4  IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25)  判断 步骤3的比较的结果,如果相等返回B2到B25,不等返回C2和C25。用来返回不同的汇率
5  SUM((DATE(YEAR(D2),MONTH(D2),1)=月初汇率!A$2:A$25)*IF(MID(工作表!F2,8,3)="USD",月初汇率!$B$2:$B$25,月初汇率!$C$2:$C$25))  将步骤2和步骤4得到的结果相乘,返回不同的汇率结果。
6  外面套上IF(F2="","",步骤5公式)  目的是当F2是空单元格时,结果也返回空。

* 在这里就是乘号的意思

步骤5的公式为典型的条件求和公式。

回复

使用道具 举报

发表于 2011-6-2 09:54 | 显示全部楼层
=IF(D2,INDEX(月初汇率!B:C,MATCH(工作表!D2,月初汇率!A:A),COUNT(FIND("JPY",F2))+1),"")
回复

使用道具 举报

 楼主| 发表于 2011-6-2 09:59 | 显示全部楼层
谢谢那么的帅!
我明白了!
太感谢了!
回复

使用道具 举报

 楼主| 发表于 2012-10-11 14:08 | 显示全部楼层
蝶·舞 发表于 2011-6-2 09:54
=IF(D2,INDEX(月初汇率!B:C,MATCH(工作表!D2,月初汇率!A:A),COUNT(FIND("JPY",F2))+1),"")

蝶舞:
你这个表中+1是什么意思
还有match(工作表!D2,月初汇率!A:A),没有写0 ,1,-1,这里是社么意思?

恳请百忙之中帮助!我问了很多人啦,但是解释我都难以明白,所以又想到你了!
实在谢了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-23 22:10 , Processed in 0.258896 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表