如何把excel应用在一个单元格的宏,变成对一列的每个单元格都生效呢?

Subtest()Application.DisplayAlerts=FalseOnErrorGoToendlineSetd=CreateObject("scriptin... Sub test()
Application.DisplayAlerts = False
On Error GoTo endline
Set d = CreateObject("scripting.dictionary")
Set x = Application.InputBox("", "选择单元格", , , , , , 8)
If x.Count > 1 Then MsgBox "只能选择单个单元格!": GoTo endline
If Len(x) = 0 Then MsgBox "所选为空值!": GoTo endline
Set y = Application.InputBox("", "选择放置结果的区域", , , , , , 8)
arr = VBA.Split(x, ",")
For Each Rng In arr
d(Rng) = ""
Next
Range(y.Address)(1).Range("a1") = VBA.Join(d.keys, ";")
d.RemoveAll
endline:
Application.DisplayAlerts = True
End Sub
展开
 我来答
skyzxh

2017-09-08 · 知道合伙人软件行家
skyzxh
知道合伙人软件行家
采纳数:2623 获赞数:8344
毕业于中科院,硕士,30年工程从业经验。现任公司技术负责。

向TA提问 私信TA
展开全部
去掉 "只能选择单个单元格!"那句,加个循环,For each cel in x .... Next
百度网友b8f6fa5
2014-07-08 · 超过24用户采纳过TA的回答
知道答主
回答量:105
采纳率:0%
帮助的人:36.9万
展开全部
写个循环就好了
追问
就是不知道怎么加,兄弟,能帮个忙吗?
追答
不是很理解你想要的最终结果,你这个代码 是要把一个单元格里的诸如1,2 换到另一个单元格里变为1;2  你想要的是什么样的结果呢?是你想选中1列 然后把这一列的数字1,2 换到另一列?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式