Dobrý den,
řeším problém, jak do funkce KDYŽ vnořit funkci pro vyvolání makra.
Konkrétně nyní mám složenou funkci založenou na SVYHLEDAT a KDYŽ, která z několika listů po x operacích nakonec naplní hodnoty do daného pole. SVYHLEDAT přiřazuje z oblastí s nenulovými hodnotami, a když nenajde, háže N/A, které je ošetřeno funkcí KDYŽ, aby v takovém případě dosazovalo 0. Tuto 0 bych potřeboval nahradit prázdným políčkem šedé barvy. Jako laický uživatel tipuju, že se bude jednat o nějakou funkci Call pro vyvolání makra, které zašediví buňku, vnořenou do funkce KDYŽ namísto té nuly. Bohužel neumím ve VBA, abych funkci call udělal a vnořil jí.
Poradí někdo? Díky za odpovědi.
VS
EXCEL: vnořená funkce pro vyvolání makra
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: EXCEL: vnořená funkce pro vyvolání makra
Postaci moznosti listu, pouzij podminene formatovani, podminka vzorec: hodnota v bunce je 0 (=A1=0), nastav barvu pisma a pozadi na pozadovanou barvu.
Doplneno: 15.9.10
V podminenem formatu pro napr. bunku C3 pouzij vzorec: =A(C3=0;JE.ČISLO(C3)); vraci-li v bunce C3 vlozena funkce hodnotu 0, je podminka splnena - PRAVDA, jinak NEPRAVDA
Doplneno: 15.9.10
V podminenem formatu pro napr. bunku C3 pouzij vzorec: =A(C3=0;JE.ČISLO(C3)); vraci-li v bunce C3 vlozena funkce hodnotu 0, je podminka splnena - PRAVDA, jinak NEPRAVDA
Naposledy upravil(a) navstevnik dne 15 zář 2010 10:41, celkem upraveno 1 x.
Re: EXCEL: vnořená funkce pro vyvolání makra
Přes podmíněné formátování to nyní řeším, ale to zase způsobuje problémy v dalších operacích s dokumentem.
-
- Level 4
- Příspěvky: 1142
- Registrován: srpen 08
- Pohlaví:
- Stav:
Offline
Re: EXCEL: vnořená funkce pro vyvolání makra
Zmena funkcni hodnoty v bunce vlozene funkce nevyvola udalost.
Obecne lze pouzit zmenu v bunce, na kterou ona vlozena funkce odkazuje, k vyvolani udalosti, tedy zmena v bunce, ktera spousti tu slozenou funkci SVYHLEDAT(...).
Priklad (vzhledem k obecnemu uvedeni pozadavku obecne): Zmena v bunce A1 vyvola zmenu funkcni hodnoty v C6. Udalostni procedura pak upravi v bunce C6 barvu pozadi v zavislosti na vysledne funkcni hodnote.
V editoru VBA (Alt+F11) vloz do modulu prislusneho listu (kde mas v C6 funkci vracejici ciselnou hodnotu):
ja na VBA? Zacni treba zde: http://www.officir.ic.cz/excelentne.html
Obecne lze pouzit zmenu v bunce, na kterou ona vlozena funkce odkazuje, k vyvolani udalosti, tedy zmena v bunce, ktera spousti tu slozenou funkci SVYHLEDAT(...).
Priklad (vzhledem k obecnemu uvedeni pozadavku obecne): Zmena v bunce A1 vyvola zmenu funkcni hodnoty v C6. Udalostni procedura pak upravi v bunce C6 barvu pozadi v zavislosti na vysledne funkcni hodnote.
V editoru VBA (Alt+F11) vloz do modulu prislusneho listu (kde mas v C6 funkci vracejici ciselnou hodnotu):
Kód: Vybrat vše
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
With Me.Range("c6")
If .Value = 0 Then
.Interior.ColorIndex = 15
Else
.Interior.ColorIndex = xlNone
End If
End With
End If
End Sub
ja na VBA? Zacni treba zde: http://www.officir.ic.cz/excelentne.html
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
- 1
- 514
-
od Grimm
Zobrazit poslední příspěvek
12 bře 2024 21:43
-
- 5
- 2656
-
od mmmartin
Zobrazit poslední příspěvek
13 črc 2023 18:44
-
-
vyvolani fotek online - starsi fotky nelze presunout do PC
od p3v4x » 04 črc 2023 21:47 » v Vše ostatní (Off topic) - 1
- 1886
-
od petr22
Zobrazit poslední příspěvek
11 črc 2023 13:12
-
-
- 11
- 2560
-
od WolfGunCZ
Zobrazit poslední příspěvek
09 lis 2023 13:16
-
- 16
- 6496
-
od mirekol
Zobrazit poslední příspěvek
20 říj 2023 08:31
Kdo je online
Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 44 hostů