Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.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
Excel:visualbasic:range as function输入不';行不通_Excel_Vba_Range - Fatal编程技术网

Excel:visualbasic:range as function输入不';行不通

Excel:visualbasic:range as function输入不';行不通,excel,vba,range,Excel,Vba,Range,我从Excel中的VB开始;到目前为止,我还不知道以下几点:; 我有以下功能: Function testGetRange(myRange As Range) Dim weekStart As Integer Dim weekEnd As Integer weekStart = myRange(1).Value weekEnd = myRange(2).Value End Function 如果我尝试这样执行它: Sub CreationRapport()

我从Excel中的VB开始;到目前为止,我还不知道以下几点:; 我有以下功能:

Function testGetRange(myRange As Range)
    Dim weekStart As Integer
    Dim weekEnd As Integer

    weekStart = myRange(1).Value
    weekEnd = myRange(2).Value
End Function
如果我尝试这样执行它:

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    testGetRange (testRange1)
End Sub
我遇到了一个类似“object needed”(抱歉,错误消息是法语:“objet requires”)的错误,当我尝试执行该函数时,它立即停止


因此:创建范围,函数将范围作为输入;不知道为什么这不起作用…

您正在调用一个函数,这些偏执表示您希望函数返回某些内容:

testGetRange (testRange1)
但是你的函数不会返回任何东西。您可以通过将其添加到testGetRange来修复此问题:

testGetRange ="My return output"
…而且你不会把输出放在任何地方。您可以通过更改CreationReport来解决此问题:

MyOutput = testGetRange (testRange1)
msgbox MyOutput

您正在调用一个函数,而parantesse表示您希望该函数返回某些内容:

testGetRange (testRange1)
但是你的函数不会返回任何东西。您可以通过将其添加到testGetRange来修复此问题:

testGetRange ="My return output"
…而且你不会把输出放在任何地方。您可以通过更改CreationReport来解决此问题:

MyOutput = testGetRange (testRange1)
msgbox MyOutput

您正在调用一个函数,而parantesse表示您希望该函数返回某些内容:

testGetRange (testRange1)
但是你的函数不会返回任何东西。您可以通过将其添加到testGetRange来修复此问题:

testGetRange ="My return output"
…而且你不会把输出放在任何地方。您可以通过更改CreationReport来解决此问题:

MyOutput = testGetRange (testRange1)
msgbox MyOutput

您正在调用一个函数,而parantesse表示您希望该函数返回某些内容:

testGetRange (testRange1)
但是你的函数不会返回任何东西。您可以通过将其添加到testGetRange来修复此问题:

testGetRange ="My return output"
…而且你不会把输出放在任何地方。您可以通过更改CreationReport来解决此问题:

MyOutput = testGetRange (testRange1)
msgbox MyOutput

当您调用一个函数但不需要返回值时,您需要去掉括号

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    testGetRange testRange1
End Sub
还是用电话

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    Call testGetRange (testRange1)
End Sub
有关为什么可以看到VBA如何处理将控件传输到子对象或函数的信息

调用过程时不需要使用Call关键字。 但是,如果使用Call关键字调用需要 参数、argumentlist必须用括号括起来。如果你使用 调用语法来调用任何内在函数或用户定义函数 函数的返回值被丢弃


当您调用一个函数但不需要返回值时,您需要去掉括号

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    testGetRange testRange1
End Sub
还是用电话

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    Call testGetRange (testRange1)
End Sub
有关为什么可以看到VBA如何处理将控件传输到子对象或函数的信息

调用过程时不需要使用Call关键字。 但是,如果使用Call关键字调用需要 参数、argumentlist必须用括号括起来。如果你使用 调用语法来调用任何内在函数或用户定义函数 函数的返回值被丢弃


当您调用一个函数但不需要返回值时,您需要去掉括号

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    testGetRange testRange1
End Sub
还是用电话

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    Call testGetRange (testRange1)
End Sub
有关为什么可以看到VBA如何处理将控件传输到子对象或函数的信息

调用过程时不需要使用Call关键字。 但是,如果使用Call关键字调用需要 参数、argumentlist必须用括号括起来。如果你使用 调用语法来调用任何内在函数或用户定义函数 函数的返回值被丢弃


当您调用一个函数但不需要返回值时,您需要去掉括号

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    testGetRange testRange1
End Sub
还是用电话

Sub CreationRapport()
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    Call testGetRange (testRange1)
End Sub
有关为什么可以看到VBA如何处理将控件传输到子对象或函数的信息

调用过程时不需要使用Call关键字。 但是,如果使用Call关键字调用需要 参数、argumentlist必须用括号括起来。如果你使用 调用语法来调用任何内在函数或用户定义函数 函数的返回值被丢弃


好的,在测试了不同的答案后,这是有效的:

Function testGetRange(myRange As Range) As String
    Dim weekStart As String
    Dim weekEnd As String

    weekStart = myRange(1)
    weekEnd = myRange(2)

    testGetRange = weekStart
End Function
在小组中:

Sub CreationRapport()
    Dim myOutput As String
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    myOutput = testGetRange(testRange1)
    MsgBox myOutput
End Sub
MsgBox不是必需的,但是部件
myOutput=testGetRange(testRange1)
是必需的!
因此,正如Doug所建议的,我们需要对VB进行更多的研究,以了解其原因。谢谢大家:)

好的,所以在测试了不同的答案后,这个方法奏效了:

Function testGetRange(myRange As Range) As String
    Dim weekStart As String
    Dim weekEnd As String

    weekStart = myRange(1)
    weekEnd = myRange(2)

    testGetRange = weekStart
End Function
在小组中:

Sub CreationRapport()
    Dim myOutput As String
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    myOutput = testGetRange(testRange1)
    MsgBox myOutput
End Sub
MsgBox不是必需的,但是部件
myOutput=testGetRange(testRange1)
是必需的!
因此,正如Doug所建议的,我们需要对VB进行更多的研究,以了解其原因。谢谢大家:)

好的,所以在测试了不同的答案后,这个方法奏效了:

Function testGetRange(myRange As Range) As String
    Dim weekStart As String
    Dim weekEnd As String

    weekStart = myRange(1)
    weekEnd = myRange(2)

    testGetRange = weekStart
End Function
在小组中:

Sub CreationRapport()
    Dim myOutput As String
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    myOutput = testGetRange(testRange1)
    MsgBox myOutput
End Sub
MsgBox不是必需的,但是部件
myOutput=testGetRange(testRange1)
是必需的!
因此,正如Doug所建议的,我们需要对VB进行更多的研究,以了解其原因。谢谢大家:)

好的,所以在测试了不同的答案后,这个方法奏效了:

Function testGetRange(myRange As Range) As String
    Dim weekStart As String
    Dim weekEnd As String

    weekStart = myRange(1)
    weekEnd = myRange(2)

    testGetRange = weekStart
End Function
在小组中:

Sub CreationRapport()
    Dim myOutput As String
    Dim testRange1 As Range
    Set testRange1 = Range("A5:B5")

    myOutput = testGetRange(testRange1)
    MsgBox myOutput
End Sub
MsgBox不是必需的,但是部件
myOutput=testGetRange(testRange1)
是必需的!
因此,正如Doug所建议的,我们需要对VB进行更多的研究,以了解其原因。谢谢大家:)

函数通常在末尾返回一些内容,如:
testGetRange=…
。我使用“…”是因为我不能告诉你想要它返回或做什么。也许你只需要一个执行动作的潜艇。了解您希望发生的事情会很有帮助。testGetRange(myRange作为Range)作为字符串[…]testGetRange=weekStart不会改变任何事情:/请阅读有关VBA函数和子函数的一些基本资料。此外,正如我所建议的,告诉我们你希望发生的事情真的会有所帮助。否则我们必须猜测。函数通常在结尾返回一些内容,如:
testGetRange=…
。我使用“…”是因为我不能告诉你想要它返回或做什么。也许你只需要一个执行动作的潜艇。了解您希望发生的事情会很有帮助。testGetRange(myRange作为Range)作为字符串[…]testGetRange=weekStart不会改变任何事情:/请阅读有关VBA函数和子函数的一些基本资料。还有,正如我建议的,告诉我们