Načtení hodnoty checkboxu

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Jakub Klinke
nováček
Příspěvky: 10
Registrován: leden 13
Pohlaví: Muž
Stav:
Offline

Načtení hodnoty checkboxu

Příspěvekod Jakub Klinke » 17 led 2013 08:49

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...

Reklama
guest
Pohlaví: Nespecifikováno

Re: Načtení hodnoty checkboxu

Příspěvekod guest » 17 led 2013 09:41

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

Jakub Klinke
nováček
Příspěvky: 10
Registrován: leden 13
Pohlaví: Muž
Stav:
Offline

Re: Načtení hodnoty checkboxu

Příspěvekod Jakub Klinke » 17 led 2013 10:28

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)

cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: březen 11
Bydliště: Drsná Vysočina :D
Pohlaví: Muž
Stav:
Offline

Re: Načtení hodnoty checkboxu

Příspěvekod cmuch » 17 led 2013 11:59

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.

Jakub Klinke
nováček
Příspěvky: 10
Registrován: leden 13
Pohlaví: Muž
Stav:
Offline

Re: Načtení hodnoty checkboxu

Příspěvekod Jakub Klinke » 17 led 2013 12:20

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.

Mirdad69
Level 2
Level 2
Příspěvky: 219
Registrován: červen 12
Pohlaví: Muž
Stav:
Offline

Re: Načtení hodnoty checkboxu

Příspěvekod Mirdad69 » 17 led 2013 12:37

Také může být samozřejmě toto:

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

Jakub Klinke
nováček
Příspěvky: 10
Registrován: leden 13
Pohlaví: Muž
Stav:
Offline

Re: Načtení hodnoty checkboxu

Příspěvekod Jakub Klinke » 17 led 2013 13:11

Díky i za tuto variantu, excel v příkladech je nejlepší způsob pochopení a učení..


Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host