【发布时间】:2016-04-18 23:42:35
【问题描述】:
我在 Bartender(标签软件)模板上有一些 VBScript,它访问 Excel 电子表格并将给定 BOM 代码的数据连接到报告上的字符串中(所有数据都来自同一行)。通过我们与 Bartender 集成的应用程序修改电子表格或运行脚本会导致打开许多 Excel 实例,并极大地降低任何使用该模板的计算机的速度。
Public Function GetData()
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open _
("C:\Users\Public\Formulator\Labels\BOMSuffixes.xlsx")
intRow = 2
strNames = ""
genericDescription = ""
containerWeight = ""
containerUom = ""
Do Until objExcel.Cells(intRow,7).Value = ""
strNames = objExcel.Cells(intRow, 7).Value
If InStr(Field("BOM.BOMCode"),strNames) <> 0 Then
genericDescription = objExcel.Cells(intRow, 8).Value
containerWeight = objExcel.Cells(intRow, 9).Value
containerUom = objExcel.Cells(intRow, 10).Value
End If
intRow = intRow + 1
Loop
GetData = Field("BOM.BulkQuantity") + " " + Field("BOM.BulkUnits") +
" (" + CStr(Round(Field("BOM.BulkQuantity")*0.453592, 2) ) +
" Kg)" +" packed in a " + CStr(containerWeight) + " " +
containerUom + " (" + CStr(Round(containerWeight*0.453592, 2) ) +
" Kg)" + ", " + genericDescription
objExcel.Close
objExcel.Quit
objExcel.DisplayAlerts = False
End Function
【问题讨论】: