Stránka 1 z 1

Načtení hodnoty checkboxu

Napsal: 17 led 2013 08:49
od Jakub Klinke
Zdravím
po úspěšném začátku s makry jsem se dostal do slepé uličky :)
1. vytvořil jsem formulář, ve kterém jsou checkboxy, pomocí kterých se zobrazují a skrývají listy sešitu.
2. Úspěšně se mi do něj podařilo přidat textová pole, do kterých se mi po spuštění formuláře načtou hodnoty buněk z různých listů a mohu je tak buď ponechat a nebo změnit
3. Stejné funkčnosti nejsem schopen dosáhnout u checkboxů = potřebuji aby se při spuštění formuláře checkbox zobrazil jako zatržený, nebo nezatržený v závislosti na tom, zda je příslušný list zobrazený nebo nezobrazený.
V čem je chyba? Lze to vyřešit i procedurou Select Case? Zkoušel jsem i to a nezadařilo se.. (potřebuji při spuštění formuláře prověřit zobrazení cca 20 listů) :)

Kód: Vybrat vše

Private Sub UserForm_Initialize()
TextBox7.Text = Sheets("ID").Range("K16").Text
NavrhovanyStav.Value = IIf(Sheets("NÁVRH").Visible = 1, True, False)
End Sub


NavrhovanyStav je checkbox...

Re: Načtení hodnoty checkboxu

Napsal: 17 led 2013 09:41
od guest
Vlastnost Visible listu testujte na:
-1 ... xlSheetVisible ... viditelný
0 ... xlSheetHidden ... skrytý
2 ... xlSheetVeryHidden ... skrytý, nelze zobrazit z listu

viz modul patřičného listu a okno Properties

Re: Načtení hodnoty checkboxu

Napsal: 17 led 2013 10:28
od Jakub Klinke
Ano tomu rozumím,
předpokládám tedy že pokud následujícím způsobem při spuštění formuláře otestuji zda Sheets("NÁVRH").Visible = 1, tedy list je zobrazený, tak mi to má checkbox zobrazit jako TRUE tedy zaškrtnutý, ale neděje se tak.

NavrhovanyStav.Value = IIf(Sheets("NÁVRH").Visible = 1, True, False)

Re: Načtení hodnoty checkboxu

Napsal: 17 led 2013 11:59
od cmuch
Tady je chybka IIf(Sheets("NÁVRH").Visible = 1, True, False)

Má být IIf(Sheets("NÁVRH").Visible = -1, True, False)

Jak psal xlnc je to vidět co má jaký stav za číslo.

Re: Načtení hodnoty checkboxu

Napsal: 17 led 2013 12:20
od Jakub Klinke
Děkuji mnohokrát pánové
myslel jsem si původně že -1 je jako odrážka před jedničkou a nebral to na vědomí:) už vše funguje.

Re: Načtení hodnoty checkboxu

Napsal: 17 led 2013 12:37
od Mirdad69
Také může být samozřejmě toto:

IIf(Sheets("NÁVRH").Visible = xlSheetVisible, True, False)

Re: Načtení hodnoty checkboxu

Napsal: 17 led 2013 13:11
od Jakub Klinke
Díky i za tuto variantu, excel v příkladech je nejlepší způsob pochopení a učení..