VBA中在过程中调用另一个过程失败的一种原因
程序员文章站
2023-12-26 10:56:27
...
参数调用提示缺少=
今天学写VBA,在一个过程中调用另外一个过程总是失败,项目目的是从C列的数据去重建立对应的表,被调用的过程是用来判断新建表的名称是否重复,从而实现C列去重建表,但在调用过程时总是提示“缺少=”,原来看书中的几种调用方式,用Call和不用Call调用看书没看出什么区别,在实际代码中如果参数超过两个,不写CALL会引起语法错误,调用时添加了Call后执行正确。
'主过程
Sub 新建表并填充相应数据()
Dim i As Integer, j As Integer, result As Byte
i = 2
Do While Worksheets("汇总表").Cells(i, "C").Value <> ""
result = 0
isrepead(Worksheets("汇总表").Cells(i, "C").Value, result)
If result = 0 Then
Worksheets.Add
ActiveSheet.Name = Worksheets("汇总表").Cells(i, "C").Value
End If
i = i + 1
Loop
End Sub
'被调用的过程
Private Sub isrepead(workshtname As String, result As Byte)
Dim k As Integer
For k = 1 To Worksheets.Count Step 1
If workshtname = Worksheets(k).Name Then
result = result + 1
End If
Next
End Sub