返回列表 上一主題 發帖

[發問] 格式設定 ?

本帖最後由 Andy2483 於 2022-8-11 11:51 編輯

回復 1# t8899


   
不顯示整數後方的 "." 並維持各個位數對齊
1.按TEST按鈕
2.執行後由於變化很小! 需查看有底色的儲存格
3.避免影響其它格式的儲存格! 格式設定為以下兩種的才會被變更格式 或 交換變更格式
A.         #,##0.??;[紅色]-##,#?0.??
B.         #,###_._0_0;[紅色]-#,###_._0_0

PS:格式設定的呈現結果最好與原值相同!否則有目視的應用誤差!

20220811.zip (16.58 KB)

Option Explicit
Sub TEST()
Dim Ar As Range, a  As Range, NF1, NF2
NF1 = "#,###_._0_0;[紅色]-#,###_._0_0"
NF2 = "#,##0.??;[紅色]-##,#?0.??"
Set Ar = Cells
For Each a In Ar.SpecialCells(2)
   If a.NumberFormatLocal = NF1 Or a.NumberFormatLocal = NF2 Then
      If a Like "*#" = True And a Like "*.*" = False Then
         a.NumberFormatLocal = NF1
         ElseIf a Like "*#.#*" Then
            a.NumberFormatLocal = NF2
      End If
   End If
Next
End Sub

TOP

回復 3# t8899
1.前輩的這帖讓後學學到不少關於格式設定的知識!謝謝前輩
2.後學猜測前輩的需求,想到這方法,暫時找不到其它的方法
3.如果後輩的VBA方法符合前輩的需求,後學也想知道有沒有更簡單的方法!拋磚引玉!請各位前輩再指導!

TOP

回復 5# quickfixer


    感謝前輩指導!
後輩初步認識 如何將儲存格自身內容用多條件(公式)控制儲存格格式!
謝謝!

TOP

        靜思自在 : 【蒙蔽的自由】人常在什麼都可以自由自在的時候,卻被這種隨心所欲的自由蒙蔽,虛擲時光而毫無覺知。
返回列表 上一主題