相关疑难解决方法(0)

Call关键字在VB6中有什么作用?

我们的项目中有一些代码看起来像这样:

Private Sub Method1()
    Call InnerMethod
End Sub

Private Sub Method2()
    InnerMethod
End Sub

Private Sub InnerMethod()
    '' stuff
End Sub
Run Code Online (Sandbox Code Playgroud)

Method2优于Method2的优势是什么?

vb6 syntax vba

33
推荐指数
3
解决办法
3万
查看次数

通话关键字-是否已弃用

在此处输入图片说明

一段时间以来,我已经看到有人提到“ 呼叫声明”已被弃用,但是我似乎找不到任何官方证据来支持这一说法。

文档页面上页面上有一个相当近期的更新(12/03/2018),所以不能说是过时的信息。

大部分时间,我一直在代码中使用Call,原因仅在于:

Call function(arg1, arg2, arg3) 比...更具可读性 function arg1, arg2, arg3

现在,对于这个问题,谁能提供一些我为什么不应该再使用该Call语句的见解?如果您确实不赞成使用,请提供指向资源的链接。

如果这个问题违反了网站规则,请告诉我,我会很乐意将其删除,尽管很高兴得到答复。

vba

8
推荐指数
2
解决办法
355
查看次数

如何将范围obj变量传递给Excel VBA中的子(2016)

给出以下代码: 我似乎无法成功地将Range对象变量从一个子函数传递到另一个子函数.我花了整整一天时间研究和试验,然后才吞下骄傲来到这里.

请阅读下面的评论,并回答您有关为什么最后两行不会表现的任何想法.

Public Sub doSomethingToRows(ROI As Range)
*'do Something with the cell values within the supplied range*

End Sub
'
Public Sub testDoAltRows()

    Dim RegionOfInterest As Range       'is this an object or not?

    '*The following yields: Class doesn't support Automation (Error 430)*
    '*Set RegionOfInterest = New Worksheet 'this just gives an error*

    Set RegionOfInterest = Worksheets("Sheet1").Range("A1")
    RegionOfInterest.Value = 1234.56        '*okay, updates cell A1*

    Set RegionOfInterest = Worksheets("Sheet1").Range("B5:D15")
    RegionOfInterest.Columns(2).Value = "~~~~~~"    '*okay*

    'doSomethingToRows (RegionOfInterest)   'why do I get …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba excel-2016

0
推荐指数
1
解决办法
1438
查看次数

标签 统计

vba ×3

excel ×1

excel-2016 ×1

excel-vba ×1

syntax ×1

vb6 ×1