从vbscript的字符串中获取double部分

时间:2016-01-29 14:42:42

标签: string vbscript get format getstring

我想创建一个带有vbscript的条形码,这个条形码将从我公司的erp中解码(我的公司将这些小块数除以10000。 条形码应具有这种外观: 99XXXXXXXXXQQQQQQQQPPPPP其中:X是我的条形码,Q是数量,P是价格。连接我有:

Result = 99 & [sheet$.BARCODE] & right("00000000" & quantity*10000, 8) & right("00000" & VBScript1*10000,5)

现在VBScript1有这种风格,因为它在程序的其他地方使用:

VBScript1 = "PRICE: "& FormatCurrency([sheet$.TIMH SAKOYLAKI]/[sheet$.SAKOYLAKI TWN]*1.3*(Round((40*CDbl(zyg))/CDbl([sheet$.GR/40 TEM]))),2)

所以VBScript1的输出就像Price: $0,40

现在我的问题是如何从字符串中提取数字,然后将其乘以10000,以便在上面使用它?

对于我的示例,我希望将价格Price: $0,40用作条形码中的04000

2 个答案:

答案 0 :(得分:1)

在$上使用Split()获取数字部分(例如)"价格:$ 0,40",处理小数点逗号,左边是pad:

>> s = "Price: $0,40"
>> p = CDbl(Replace(Split(s, "$")(1), ",", "."))
>> t = Right(String(5, "0") & p * 10000, 5)
>> WScript.Echo t
>>
04000
>>

答案 1 :(得分:0)

就像Marc B说的那样,我尝试了这个并且它工作得非常简单:)

Result =[...]right("00000" & CDbl((Mid(VBScript1,7,7)))*10000,5)[...]