Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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
Vba 宏生成Excel C++头文件 我想制作一个Excel文件,它可以为我的C++源文件生成一个头文件。 以前我们使用excel生成.h文件,但我不知道其背后的逻辑,我希望一些宏可以用于此_Vba_Excel_Excel 2010 - Fatal编程技术网

Vba 宏生成Excel C++头文件 我想制作一个Excel文件,它可以为我的C++源文件生成一个头文件。 以前我们使用excel生成.h文件,但我不知道其背后的逻辑,我希望一些宏可以用于此

Vba 宏生成Excel C++头文件 我想制作一个Excel文件,它可以为我的C++源文件生成一个头文件。 以前我们使用excel生成.h文件,但我不知道其背后的逻辑,我希望一些宏可以用于此,vba,excel,excel-2010,Vba,Excel,Excel 2010,我的头文件包含这么多数据,我的目的是通过excel文件为MYapp Alpha 0.0.3,因为每个版本的版本号都会更改。若我使用excel文件,那个么我可以编辑那个excel,它会为我创建.h文件,稍后我可以通过excel文件配置更多信息 是否可以编写宏来编辑MYapp Alpha 0.0.3而不触碰其他宏 #define APP_FLASH_APP_ID 0x123 #define APP_VERSION_NUM "MYapp Alpha 0.0.3 " #define APP_PRO

我的头文件包含这么多数据,我的目的是通过excel文件为MYapp Alpha 0.0.3,因为每个版本的版本号都会更改。若我使用excel文件,那个么我可以编辑那个excel,它会为我创建.h文件,稍后我可以通过excel文件配置更多信息

是否可以编写宏来编辑MYapp Alpha 0.0.3而不触碰其他宏

 #define APP_FLASH_APP_ID 0x123
 #define APP_VERSION_NUM "MYapp Alpha 0.0.3 "
 #define APP_PRODUCT_NAME "TPI "
 #define APP_DESCRIPTION_STR APP_PRODUCT_NAME APP_VERSION_NUM
 #define APP_RELEASE_DATE_STR "10/11/13"
 #define APP_SOFTWARE_PARTNUM_LEN 10
需要一些有价值的帮助或建议


祝你度过愉快的一天。基本上,.h文件是一个文本文件。所以你需要做一些字符串处理,打开一个文本文件,打印其中的数据,然后关闭它

要打开和关闭文本文件,请使用以下命令:

Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim oFile As Object
Set oFile = fso.CreateTextFile("D:\test.h")
oFile.WriteLine "tfadfadsest"
oFile.Close
Set fso = Nothing
Set oFile = Nothing

我认为这可以帮助你:

Sub test()

    Const strVerNumber As String = "0.0.4"

    Dim FS, TSsource
    Set FS = CreateObject("Scripting.FileSystemObject")
    Set TSsource = FS.OpenTextFile("C:\test.txt", 1, 2)

    Dim tmpString As String
    tmpString = TSsource.ReadAll
    TSsource.Close

    tmpString = Replace(tmpString, _
                        "MYapp Alpha 0.0.3", _
                        "MYapp Alpha " & strVerNumber)

    Dim TSout
    Set TSout = FS.Createtextfile("C:\testOUT.txt", True)

    TSout.Write tmpString
    TSout.Close

End Sub

看看这些方法:,和

你是在说这样的事情吗:

公式:

结果:

您非常了解我的需要。例如,我需要相同的文件,需要在固定位置复制,比如c:/user/mydata。我真正需要的是将其保存在两个文件中,一个是*.h,另一个是*.opt。两者都是固定位置