任何人都可以在vba中查看我的代碼。括號不被識別
wb2.ActiveSheet.Range("K" & lrow3 + 1).Value = "(" & wb2.ActiveSheet.Range("K" & lrow3 + 1).Value * -1 & ")"
這僅輸出
-24.5
即公式將值轉換在細胞如果單元的值是負的,並把它在括號內。謝謝。
任何人都可以在vba中查看我的代碼。括號不被識別
wb2.ActiveSheet.Range("K" & lrow3 + 1).Value = "(" & wb2.ActiveSheet.Range("K" & lrow3 + 1).Value * -1 & ")"
這僅輸出
-24.5
即公式將值轉換在細胞如果單元的值是負的,並把它在括號內。謝謝。
請以此爲參考:
將負值複製到單元格A2中。然後格式化A2以在括號中顯示負值,並帶有兩位小數。
Sub test()
Range("A1").Copy Range("A2")
Range("A2").NumberFormat = "0.00;(0.00);0"
End Sub
沒有被轉換。沒有括號連接。單元格只是用自定義數字格式進行格式化。在Excel中的數字格式的語法
<format for positive values>;<format for negative values>;<format for zeroes>;text
例如,自定義格式
0;-0;;
將顯示爲整數,負值正值與一家領先的-
籤,隱藏零和隱藏文本。
選擇範圍,然後去單元格格式 ... - >定製,並鍵入:
_(* #,##0_);_(* (#,##0);_("-");_()
這將會把你的負值和噘嘴它括號內
有什麼辦法可以將其轉換爲VBA? – ramj
在VBA代碼:
if wb2.ActiveSheet.Range("K" & lrow3 + 1).Value<=0 then
wb2.ActiveSheet.Range("K" & lrow3 + 1).Value = wb2.ActiveSheet.Range("K" & lrow3 + 1).Value * -1
else
wb2.ActiveSheet.Range("K" & lrow3 + 1).numberformat = "@"
wb2.ActiveSheet.Range("K" & lrow3 + 1).Value = "(" & wb2.ActiveSheet.Range("K" & lrow3 + 1).Value * -1 & ")"
end if
你想有這樣的公式設置爲這個小區? –
@ShaiRado是的,這就是我想要做的。 – ramj
爲什麼你不使用數字格式?看起來你正試圖重新發明輪子。 – teylyn