簡體   English   中英

VBA - 已經在 Excel 中使用顏色 select 來填充單元內部

[英]VBA - use color already select in Excel to fill cell interior

我知道如何將單元格的內部顏色設置為某種顏色,但是有沒有辦法讓它(即單元格顏色)默認為色帶顏色 window 中已經選擇的顏色?

我已經很晚了,但是由於它在谷歌搜索中彈出其他內容,我想我會提到選擇的答案是不正確的,當它說你不能做提交者想要的事情時。 您可以直接使用...激活控件

Application.CommandBars.ExecuteMso "CellFillColorPicker"

...它會將當前選定的顏色應用於選定的范圍。

我實際上正在環顧四周,看看是否有辦法通過 VBA 在控件庫中使用 select 另一種顏色,這樣我可以在第一次打開工作簿時設置默認的“無填充”而不是黃色。

可以得到當前選擇的,但我希望它更容易..

這是基於@justpassingthrough 提供的代碼捕獲它的示例。

而不是 Debug.print - 您可以將值保存到全局變量中嗎?

      Sub HiddenSheetGetColor()


      Application.ScreenUpdating = False  ' :: STOP SCREEN FLASHES

      Dim HiddenSheetName  As String   ':: VARIABLE TO SHEET NAME

      HiddenSheetName = Format(Now(), "__YYYYMMDD_HH_MM_SS_.00")  ' TIMESTAMP FOR SHEET SO IT'LL NEVER DUPLICATE

      Worksheets.Add.Name = HiddenSheetName  ' CREATE NEW SHEET AND SET NAME TO TIMESTAMP REFERENCED ABOVE

      Sheets(HiddenSheetName).Select   'SELECT IT

      Range("A1").Select                  'SELECT A CELL

      Application.CommandBars.ExecuteMso "CellFillColorPicker"   ' APPLY CURRENT TOOLBAR 'FILL' COLOUR TO CELL

      Debug.Print Range("A1").Interior.Color  ' :: PRINT THIS VALUE TO LOG/IMMEDIATE WINDOW ::

      Application.DisplayAlerts = False  ' :: STOP ERROR WHEN DELETING SHEET

      Sheets(HiddenSheetName).Delete ' :: DELETE SHEET

      Application.DisplayAlerts = True ' :: ALLOW ERROR WHEN DELETING SHEET

      Application.ScreenUpdating = True ' :: UPDATE SCREEN AGAIN!

      End Sub

恐怕你不能

無論如何,您可以使用以下代碼使用自定義調色板:

modColorFunctions 模塊包含一個名為 ChooseColorDialog 的 function,它將顯示一個 Windows 顏色選擇器對話框並返回 RGB Long 顏色值。 如果用戶取消對話框,結果為 -1。 例如,

Dim RGBColor As Long
Dim Default As Long
Default = RGB(255, 0, 255) 'default to purple
RGBColor = ChooseColorDialog(DefaultColor:=Default)
If RGBColor < 0 Then
    Debug.Print "*** USER CANCELLED"
Else
    Debug.Print "Choice: " & Hex(RGBColor)
End If

摘自http://www.cpearson.com/Excel/Colors.aspx的“顯示顏色選擇器對話框”一章

您需要添加顏色模塊才能使其工作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM