可以保留輸入到B8,同時顯示在貨幣符號和小數以及所述「作爲MM/DD/YY」的原始數值部,但日期只會顯示。
複製此代碼並將其粘貼到工作表的代碼表中(右鍵單擊ws名稱選項卡,查看代碼)。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B8")) Is Nothing Then
On Error GoTo bm_Safe_Exit
Application.EnableEvents = False
Dim str As String
str = Range("B8").NumberFormat
If CBool(InStr(1, str, "\a\s of", vbTextCompare)) Then _
ThisWorkbook.DeleteNumberFormat NumberFormat:=str
str = Format(Date, " \a\s of dd-mmm-yyyy")
str = StrConv(str, vbUnicode)
str = Join(Split(str, vbNullChar), Chr(92))
str = Left(str, Len(str) - 1)
str = "$#,##0" & str & ";[Red]($#,##0)" & str
Range("B8").NumberFormat = str
'Debug.Print str
End If
bm_Safe_Exit:
Application.EnableEvents = True
End Sub
你不會建立一些無用的自定義數字格式,因爲每個分配一個新的人之前刪除;即使它是一樣的。 B8單元格中的值仍可用於計算和比較。
注單元格中的數字一樣,右對齊。如果該欄不夠寬,無法顯示整個街區,則最終會以########結束。
嘗試在應用「自定義」格式的地方錄製一個宏。 –
如果你可以使用輔助單元,如果A1中的「10000」和日期B1中,你可以在C1:'= Text(A1,「$#,## 0.00」)&「of」 &文本(B1,「mm/dd/yy」)' – BruceWayne