Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba Debug显示此代码将永远循环,但有';It’没有什么能让这种事发生_Vba_Excel - Fatal编程技术网

Vba Debug显示此代码将永远循环,但有';It’没有什么能让这种事发生

Vba Debug显示此代码将永远循环,但有';It’没有什么能让这种事发生,vba,excel,Vba,Excel,正如标题所说,出于某种原因,这段代码正在创建一个循环 Sub Title() Application.ScreenUpdating = False Dim rng As Range Dim ws As Worksheet Set ws = ActiveSheet Dim myCell As Range Dim rng1 As Range Set rng1 = ws.Range(ws.Cells(2, 3), ws.Cells(ws.Rows.Count, 3).End(xlUp)) Set r

正如标题所说,出于某种原因,这段代码正在创建一个循环

Sub Title()

Application.ScreenUpdating = False
Dim rng As Range
Dim ws As Worksheet
Set ws = ActiveSheet
Dim myCell As Range
Dim rng1 As Range
Set rng1 = ws.Range(ws.Cells(2, 3), ws.Cells(ws.Rows.Count, 3).End(xlUp))
Set rng = ws.Range(ws.Cells(2, 2), ws.Cells(ws.Rows.Count, 2).End(xlUp))


Range("B:B").Style = "Normal"
Range("B1").Style = "Good"

For Each myCell In rng
    If myCell.Value = UCase(myCell.Value) Then
        myCell.Value = WorksheetFunction.Proper(myCell.Value)
    End If

    myCell.Value = " " & myCell.Value & " "

Next myCell

rng.Replace "  ", " "
出于某种原因,它还在其下方的数千行中添加了空格。我似乎无法理解这一点。欢迎任何建议。

出于某种原因

If myCell.Value = UCase(myCell.Value) Then
         myCell.Value = WorksheetFunction.Proper(myCell.Value)
End If

这是问题的根源。去掉这一点可以解决奇数无限循环。

是的,For是一个循环。你的意思是循环永远不会结束吗?你试过一行一行地穿过吗?我认为这可能与您的
rng
有关。您可以放置一个中断并查看其填充的地址吗?您是从事件处理程序调用它吗?这些都是密码吗?我看不到
rng1
的任何用途。与Comintern达成一致-现在这是所有代码的一种方式。范围有多大,如果范围大,代码将需要花费很长时间才能完成。@n我只是一步一步地走,即使有4行数据,它也会无限期地在范围内循环。