我试图在excel中运行一个简单的冒泡排序算法。每次我试图运行冒泡排序时,我都会收到一个错误消息,“编译错误子函数或函数未定义。”我正在使用教授给我的代码。请帮助。
Sub BubbleSort()
' Sorts an array using bubble sort algorithm
For i = 1 To 20
For j = 1 To 20 - i
If Cells(j, 1) > Cells(j + 1, 1) Then
Temp = Cells(j, 1)
Sleep 10
Cells(j, 1) = Cells(j + 1, 1)
Cells(j + 1, 1) = Temp
Application.Wait (Now + TimeValue("0:00:001"))
End If
Next
Next
End Sub
我试过使用vb sytax检查器。但坦率地说,我没有vb的经验,不知道从哪里开始。
2条答案
按热度按时间idfiyjo81#
对单列区域进行气泡排序
ulydmbyx2#
Sleep是一个Windows函数而不是VBA函数,但您仍可以在声明该函数后调用Windows Sleep API,从而在VBA代码中使用该函数
例如:
更好的替代方法是使用
Application.Wait
下面是等待10秒钟的工作代码
下一个结束子组件