Case "Labour"
TxtBUP1.Text = "£" & "20.00" & "/Hr"
Unitcost = Val(TxtBUP1.Text) * Val(CBQty1.Text)
TxtBCost1.Text = Str(Unitcost)
'Individual Cost [Value + Qty]
我主要关注的是使用额外的货币符号(£和/ Hr)计算最终值,所以我的问题基本上是有一种方法可以将编码主要集中在“20.00”,但仍然显示结束输出货币sybmols ?
答案 0 :(得分:0)
如果您确实不希望/不能使用内置函数进行货币或时间格式化,并且您的数据始终采用相同的格式(即currency symbol
+ value
+ {{1}对于这个例子,但无论如何“可预测”),然后你可以添加到你的项目:
字符串 - >数字功能 从货币符号和“每小时”符号中“清除”您的值,从而以双重类型返回它:
per hour
数字 - >字符串函数重写货币符号和结尾处的“每小时”:
Public Function StringToNumber(ByVal stringValue As String) As Double
stringValue = stringValue.Replace("£", "")
stringValue = stringValue.Replace("/Hr", "")
Convert.ToDouble(stringValue)
Return stringValue
End Function
像这样,你可以通过简单地使用这两个函数来执行你想要的所有操作,这两个函数可以让你快乐地转换数据点(用于代码):
Public Function NumberToString(ByVal myValue As Double) As String
Return "£" & myValue & "/Hr"
End Function
如果你有自定义值,例如“货币/价值/每小时”,这就是这个想法。我让你管理可能的复杂性来自不同的货币符号或不同的时间措施分开“每小时”。