如何将公式作为参数从textfile传递给vbscript函数

时间:2016-02-25 06:39:13

标签: vbscript

我试图将以下公式作为参数从文本文件传递到vbscript函数,但在运行时接收到未知的运行时错误。

文本文件:

=IF(ISBLANK(H2),"""",(CONCATENATE(""0"",K2)))

VBS功能:

Function PopulateFormula(fmula,filename)

Set Destfile = CreateObject("Excel.Application")

    Set DWB = Destfile.Workbooks.Open(filename)

    Set fso = CreateObject("Scripting.FileSystemObject")

    Set FormulaLogic = fso.OpenTextFile(textfile)   

                fmula=FormulaLogic.ReadLine()

              DWB.Worksheets(1).Range(M2:M2).Formula = fmula

End function

如果我使用

fmula变量进行硬编码,则上述功能可以正常工作

fmula= =IF(ISBLANK(H2),"""",(CONCATENATE(""0"",K2)))

1 个答案:

答案 0 :(得分:0)

您确定从文件中正确阅读了fmula吗?

添加一个语句来检查它:

fmula=FormulaLogic.ReadLine()
MsgBox fmula
DWB.Worksheets(1).Range(M2:M2).Formula = fmula