我是excel vba的新手,并发现了用于更新文件的现有宏的问题。
在使用无效数字进行格式化的值上移动负号的最佳方法是什么?
目前,输出产生一个15个字符的值(000000000-23378.00),在有效数字的前面有一个负号。对于这个修复,我需要将它移到所有值的前面......
示例:-00000000023378.00
逻辑如下......
Loop
Account = Account & String(8 - Len(Account), " ")
cashamount = CashArray(i, 2) 'Cash
cashamount = String(15 - Len(cashamount), "0") & cashamount
cashamount = cashamount & ".00"
Cusip = "CASHCASH6" '9 spaces
Filler = String(10, " ") 'cell padding
TradeDate = TradeDate 'TradeDate
filler2 = String(47, " ") 'cell padding
filler3 = String((970 - 200), " ") 'cell padding
myDataLine = Account & Cusip & cashamount & Filler & InterestRate & _
SecType & TradeDate & filler2 & "Cash" & filler3
Print #hFileOut, myDataLine
Next i
Close hFileIn
Close hFileOut
谢谢!
答案 0 :(得分:0)
你想要做两件事...在你确定是否需要做之后(你很可能不需要这个if语句,因为它看起来像" - "是常数,但会将其显示为JIC)。
If len(cell(i).value) > len(replace(cell(i).value,"-","")) then
第一件事:
cell(i).value = replace(cell(i).value,"-","")
第二件事:
cell(i).value = "-" & cell(i).value
应该做的伎俩。