EXCEL 怎么用vba或者宏 实现IF语句的多层循环(20层)

我想实现F列内数据为港口名港口名有20个D列数据相应批量填充为对应的港口代码(每个港口名对应唯一的代码)例如如果F1=SHANGHAI那么D1=SH01F2=QINGDA... 我想实现
F列内数据为港口名

港口名有20个

D列数据相应批量填充为对应的港口代码(每个港口名对应唯一的代码)

例如
如果F1=SHANGHAI 那么D1=SH01
F2=QINGDAO 那么D2=QD7
F3=SHANGHAI 那么F3=SH01

等等

我想到的思路是用宏的if语句的多层套用(20层)。
怎么实现呢?
怎么批量使用宏呢?
每个文件都要这么处理的
展开
 我来答
zhhch517
2009-04-15 · TA获得超过284个赞
知道小有建树答主
回答量:114
采纳率:0%
帮助的人:70.3万
展开全部
Sub test5()
For i = 1 To 1000
gk = Range("F" + CStr(i))
temp = Empty
Select Case gk
Case "SHANGHAI"
temp = "SH01"
Case "QINGDAO"
temp = "QD7 "

End Select
Range("D" + CStr(i)) = temp
Next
End Sub

中间自己补充

问题补充:怎么批量使用宏呢?
每个文件都要这么处理的

把代码所在的工作薄打开,再打开待处理的文件,运行宏即可,
Zipall
2009-04-15 · TA获得超过1.3万个赞
知道大有可为答主
回答量:8104
采纳率:42%
帮助的人:8633万
展开全部
可以用vlookup函数。
参考:
http://tieba.baidu.com/f?kz=49511214

如果用vba,可以考虑select...case语句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loveruby521
2009-04-15 · TA获得超过3.6万个赞
知道大有可为答主
回答量:2.1万
采纳率:33%
帮助的人:6429万
展开全部
设个变量
i 1to20
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友907d091a4
2009-04-15 · TA获得超过8242个赞
知道大有可为答主
回答量:3234
采纳率:0%
帮助的人:4245万
展开全部
用Select case 吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式