Stránka 1 z 1

Excel (2003) - zobrazení čísla barvy výplně buňky

Napsal: 05 srp 2010 20:44
od pikaso.o
Ahoj, potřeboval bych prosím pomoct...

Jak zobrazit v buňce číselnou hodnotu barvy její výplně? Aby se hodnota automaticky změnila při změně barvy výplně aniž bych musel manuálně spouštět nějaké makro?

Je na to funkce nebo to řešit makrem?

Pokud makrem, tak prosím i o zdrojový kód.

Děkuji předem za pomoc!!

Re: Excel (2003) - zobrazení čísla barvy výplně buňky

Napsal: 05 srp 2010 22:05
od navstevnik
Zjistit barvu vyplne bunky lze pouze procedurou VBA.
Zmena barvy vyplne bunky nevyvolava zadnou udalost.
Takze zobrazit ciselnou hodnotu barvy vyplne bunky pouhou zmenou barvy vyplne nelze.

Nedokonalym resenim muze byt pouziti udalostni procedury Worksheet_SelectionChange, ktera zajisti vlozeni do bunky ciselne hodnoty barvy jeji vyplne az po vyberu jine bunky; mysi, klavesami.
Mozne reseni pro bunku A1- ukazka:
V editoru VBA (Alt+F11) vloz do modulu prislusneho listu udalostni proceduru:

Kód: Vybrat vše

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  With Me.Range("a1")
    .Value = .Interior.Color
  End With
End Sub

Doplneno:
Jine maznost je vlastni funkce ( v editoru VBA vlozit do standardniho modulu) a volat prepocet listu klavesou F9:

Kód: Vybrat vše

Option Explicit

Function ReturnInteriorColor()
  Dim Cll As Range
  Application.Volatile
  Set Cll = Application.Caller
  ReturnInteriorColor = Cll.Interior.Color
  Set Cll = Nothing
End Function

V bunce je pak vlozena funkce (vlastni): =ReturnInteriorColor()