excel宏循环

如图:有一个刷新排序的宏,D1会跟着每次刷新变化,E1是一个固定的值,怎么一直循环到D1=E1时跳出循环,或者D1=“TEXT14"时跳出循环?请高手赐教。对VB比较菜,... 如图:有一个刷新排序的宏,D1会跟着每次刷新变化,E1是一个固定的值,怎么一直循环到D1=E1时跳出循环,或者D1=“TEXT14"时跳出循环?请高手赐教。对VB比较菜,请高手举例,谢谢!

这个宏启动一次只能刷新一次。
Sub Macro1()ActiveCell.FormulaR1C1 = "=RAND()" Range("C1").Select Selection.AutoFill Destination:=Range("C1:C26") Range("C1:C26").Select Range("C1").Select Range("A1:C26").Sort Key1:=Range("C1"), Order1:=xlAscending, Header:= _ xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin, DataOption1:=xlSortNormal Columns("C:C").Select Selection.ClearContents End Sub
展开
 我来答
crazy0qwer
推荐于2016-06-14 · TA获得超过3301个赞
知道大有可为答主
回答量:4020
采纳率:71%
帮助的人:1323万
展开全部

我觉得你还是把你想实现的效果说下比较好。


不然你可以这样:   执行AAA 。

Sub AAA()
    Do
        Macro1
        DoEvents
        If [D1] = "TEXT14" Then Exit Do
    Loop
End Sub
Sub Macro1()
    ActiveCell.FormulaR1C1 = "=RAND()"
   Range("C1").Select
   Selection.AutoFill Destination:=Range("C1:C26")
   Range("C1:C26").Select
   Range("C1").Select
   Range("A1:C26").Sort Key1:=Range("C1"), Order1:=xlAscending, Header:= _
       xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
       SortMethod:=xlPinYin, DataOption1:=xlSortNormal
   Columns("C:C").Select
   Selection.ClearContents
End Sub
更多追问追答
追问

你好,为什么循环之后D1变成下面这样:

D1是取B列中的随机值,B列是一些文本。

追答
那就不知道你了,我代码并没有改变D1的值。
你不说说你想实现的效果,只能这样做循环了。即使你到excelhome 去问,还是一样会叫你上传附件的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式