Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.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宏中创建简单VBA函数并调用它_Excel_Vba_Vbscript - Fatal编程技术网

无法在Excel宏中创建简单VBA函数并调用它

无法在Excel宏中创建简单VBA函数并调用它,excel,vba,vbscript,Excel,Vba,Vbscript,我正在尝试创建一个宏,该宏可以从本地活动工作簿中的excel电子表格收集数据,然后创建头文件,稍后将其合并到我的项目中。但对于我来说,我必须缺少一些愚蠢的东西,以至于我不能创建一个工作函数,它返回一个字符串(它将构造一个C++结构)到调用函数。我已经将示例代码简化为绝对最小值,以隔离问题,但我仍然无法找出我做错了什么。我不是VBA方面的专家,但我知道如何创建代码,我不能缩小VBA不满意的范围。我一直收到“编译错误,语法错误”。请将以下代码复制到您的模块中,看看是否为您正确编译。如果你知道我哪里出

我正在尝试创建一个宏,该宏可以从本地活动工作簿中的excel电子表格收集数据,然后创建头文件,稍后将其合并到我的项目中。但对于我来说,我必须缺少一些愚蠢的东西,以至于我不能创建一个工作函数,它返回一个字符串(它将构造一个C++结构)到调用函数。我已经将示例代码简化为绝对最小值,以隔离问题,但我仍然无法找出我做错了什么。我不是VBA方面的专家,但我知道如何创建代码,我不能缩小VBA不满意的范围。我一直收到“编译错误,语法错误”。请将以下代码复制到您的模块中,看看是否为您正确编译。如果你知道我哪里出错了,请告诉我。非常感谢

Sub CREATE_FACTORY_SETTING_HEADER()
    Dim FS, TSsource
    Set FS = CreateObject("Scripting.FileSystemObject")

    Dim TSout
    Set TSout = FS.Createtextfile("HeaderFile.h", True)

    Dim fileHeading As String
    fileHeading = "File Heading for Header file"

    Dim fileBody As String
    fileBody = "Some initial file body lines"

    fileBody = fileBody & createStructBody

    TSout.Write fileHeading & fileBody
    TSout.Close    
End Sub


Public Function createStructBody() As String
    Dim structBody As String
    structBody = "Hey I'm a struct body, but I can't be returned for some     reason"
    Return structBody
End Function

VBA和VBScript都使用“函数赋值”(而不是“返回”或“最后语句的结果”)从函数返回结果。所以

Public Function createStructBody() As String
    createStructBody = "Hey I'm a string and can be returned."
End Function

VBA和VBScript都使用“函数赋值”(而不是“返回”或“最后语句的结果”)从函数返回结果。所以

Public Function createStructBody() As String
    createStructBody = "Hey I'm a string and can be returned."
End Function

您需要指定错误的内容和位置。哪些代码行导致了哪些错误?您需要指定错误的内容和位置。哪些代码行导致了哪些错误?