Excel VBA如何檢查_含有格式化條件儲存格數量
- 帖子
- 1447
- 主題
- 40
- 精華
- 0
- 積分
- 1471
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2025-5-5
|
Excel VBA如何檢查_含有格式化條件儲存格數量
各位前輩好
1.請教 檢查_含有格式化條件儲存格數量 的程式碼
2.以下是用Interior.ColorIndex 與DisplayFormat.Interior.ColorIndex變換作驗證是否有 格式化條件
2.1.可是這個自己想的土方法在2003年版 不支援
2.2.可以設定的格式有很多種(底色.字色.粗體.斜體.格線....等),有什麼方法可一次解決嗎?
2.3.如果格式化條件是設在4合併儲存格裡!怎麼判定只有1格?
2.3.1.取消合併儲存格後 有格式化條件格位址怎麼取得?
2.4.Andy想進步!程式碼也請指教
請各位前輩指教 謝謝
Sub 檢查_含有格式化條件數量()
Dim uR As Range, formatcoN&, formatcoAD$, msg$, formatcoRng As Range
Dim orinColor&, disinColor&, orfoColor&, disfoColor&
Dim newinColor&, newdisinColor&, newfoColor&, newdisfoColor&, diF&
For Each uR In check_Area.SpecialCells(2)
diF = 0
orinColor = uR.Interior.ColorIndex
disinColor = uR.DisplayFormat.Interior.ColorIndex
If orinColor <> disinColor Then
diF = 1
GoTo 9
Else
If disinColor = -4142 Then
disinColor = 1
End If
uR.Interior.ColorIndex = disinColor + 1
newinColor = uR.Interior.ColorIndex
newdisinColor = uR.DisplayFormat.Interior.ColorIndex
uR.Interior.ColorIndex = orinColor
If newinColor <> newdisinColor Then
diF = 1
GoTo 9
End If
End If
orfoColor = uR.Font.ColorIndex
disfoColor = uR.DisplayFormat.Font.ColorIndex
If orfoColor <> disfoColor Then
diF = 1
GoTo 9
Else
If disfoColor = -4105 Then
disfoColor = 1
End If
uR.Font.ColorIndex = disfoColor + 1
newfoColor = uR.Font.ColorIndex
newdisfoColor = uR.DisplayFormat.Font.ColorIndex
uR.Font.ColorIndex = orfoColor
If newfoColor <> newdisfoColor Then
diF = 1
GoTo 9
End If
End If
9: If diF = 1 Then
formatcoN = formatcoN + 1
If formatcoAD = "" Then
formatcoAD = uR.Address
Else
formatcoAD = formatcoAD & "," & uR.Address
End If
End If
Next
If formatcoN > 20 Then
msg = "格式化條件太多!不顯示格位"
ElseIf formatcoN <> 0 Then
msg = "有格式化條件儲存格格位: " & formatcoAD
Else
msg = "沒有 格式化條件"
End If
101
ck_K = "檢查_格式化條件格數量(參考)"
ck_Q = formatcoN
ck_W = msg
ck_AC = "NA"
End If
End Sub |
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|
- 帖子
- 1447
- 主題
- 40
- 精華
- 0
- 積分
- 1471
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2025-5-5
|
2#
發表於 2020-8-6 20:31
| 只看該作者
這土方法在2013年版執行 有時候還會有NULL的錯誤值! 不了解其原因!敬請指教! |
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|
- 帖子
- 1447
- 主題
- 40
- 精華
- 0
- 積分
- 1471
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2025-5-5
|
3#
發表於 2020-8-12 16:45
| 只看該作者
謝謝各位前輩指導
以下這個辦法對嗎?
Option Explicit
Sub 檢查_格式化條件數量_1() 'FormatConditions.Count
Dim msg As String, foco As Range
On Error Resume Next
For Each foco In Cells.SpecialCells(2)
With foco.FormatConditions.Add(xlCellValue, xlGreater, "")
msg = msg & foco.Address
End With
Next
If msg = "" Then msg = ActiveSheet.Name & " 沒有任何 格式化條件...."
MsgBox msg
End Sub |
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|
- 帖子
- 1447
- 主題
- 40
- 精華
- 0
- 積分
- 1471
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2025-5-5
|
4#
發表於 2020-8-13 19:52
| 只看該作者
各位前輩好
上傳範例檔作說明
縮短執行時間.程式結構....等值得前輩們建議或指導的請不吝指導
謝謝各位指導 |
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|
- 帖子
- 1447
- 主題
- 40
- 精華
- 0
- 積分
- 1471
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2025-5-5
|
5#
發表於 2020-8-13 22:11
| 只看該作者
各位前輩好
Andy常幫同事處理 開啟檔案就出現 “格式太多” 訊息的檔案
1.同事是用2003年版的Excel ,開啟檔案就全部格式刪除或亂碼
2.用2013年版Excel 可以開啟,幫忙處理刪掉一些沒用的垃圾資料或格式後,2003年版就可以用
3.各位前輩有什麼建議,檢查哪些方面問題?可以讓問題檔案瘦身、刪除垃圾資料,回歸正常檔案運作
4.有隱藏的垃圾嗎?
謝謝各位前輩指導 |
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|
- 帖子
- 16
- 主題
- 2
- 精華
- 0
- 積分
- 55
- 點名
- 0
- 作業系統
- macOS / Windows
- 軟體版本
- Office 2010/2019
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2020-7-9
- 最後登錄
- 2021-8-7
|
6#
發表於 2020-9-16 13:01
| 只看該作者
2.以下是用Interior.ColorIndex 與DisplayFormat.Interior.ColorIndex變換作驗證是否有 格式化條件
Andy2483 發表於 2020-8-6 20:31 
格式化條件的數量可以直接使用 FormatConditions.Count 來確認 |
|
|
|
|
|
|
- 帖子
- 1447
- 主題
- 40
- 精華
- 0
- 積分
- 1471
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2025-5-5
|
7#
發表於 2020-9-17 05:27
| 只看該作者
回復 6# cody
謝謝前輩指導
再撥空測試 研習
目前忙於工作專案進行 |
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|