Excel 2003: Tvorba dynamického formuláře

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

Moderátor: Mods_senior

Dave-fm
nováček
Příspěvky: 1
Registrován: listopad 10
Pohlaví: Muž
Stav:
Offline

Excel 2003: Tvorba dynamického formuláře

Příspěvekod Dave-fm » 27 lis 2010 18:41

Dobrý den, potřebuji poradit s úpravou formuláře v excelu 2003. V jedné jeho části chci mít dva přepínače (ANO/NE). V případě, že bude platit podmínka ANO, bude uživatel formulář vyplňovat dál v nezměněné podobě. V případě, že zvolí NE, chci, aby se některé řádky nebo určitá část formuláře skryly. A dále, v případě, že uživatel zvolí NE a následně se rozmyslí a zvolí ANO, aby se formulář vrátil do původní nezkrácené podoby.
Poradíte mi jak na to? Předem díky.

// Změna názvu tématu. Původní název "formulář - excel 2003" svou nulovou informační hodnotou porušoval pravidla fóra.
// mike007

Reklama
navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel 2003: Tvorba dynamického formuláře

Příspěvekod navstevnik » 28 lis 2010 00:35

Doplneno: Asi nocni doba zpusobila, ze jsem zamenil Excel s Wordem, nasledujici je tedy zcela mimo.
Rucni skryti casti formulare (text a formularova pole) - postup viz http://office.microsoft.com/cs-cz/word- ... yti-textu-
HP005189458.aspx
Vyber casti textu a operace s touto casti viz http://www.tek-tips.com/viewthread.cfm? ... 386&page=1

Takze skryti procedurou - nutno vlozit do textu vhodna jedinecna klicova slova (napr.: Startword a Endword), mezi nimiz bude text skryt, proceduru volej zmenou stavu prepinacu:

Kód: Vybrat vše

Sub HiddenText()
  Dim StartWord As String, EndWord As String
  StartWord = "Startword"
  EndWord = "Endword"

  With ActiveDocument.Content.Duplicate
    .Find.Execute Findtext:=StartWord & "*" & EndWord, MatchWildcards:=True
    .MoveStart wdCharacter, Len(StartWord)
    .MoveEnd wdCharacter, -Len(EndWord)
    .Font.Hidden = True
  End With
End Sub

obdobne pro zobrazeni nutno pouzit:

Kód: Vybrat vše

Sub ShowText()
  Dim StartWord As String, EndWord As String
  StartWord = "Startword"
  EndWord = "Endword"

ActiveWindow.ActivePane.View.ShowAll = Not ActiveWindow.ActivePane.View.ShowAll
  With ActiveDocument.Content.Duplicate
    .Find.Execute Findtext:=StartWord & "*" & EndWord, MatchWildcards:=True
    .MoveStart wdCharacter, Len(StartWord)
    .MoveEnd wdCharacter, -Len(EndWord)
    .Font.Hidden = False
  End With
  ActiveWindow.ActivePane.View.ShowAll = Not ActiveWindow.ActivePane.View.ShowAll
End Sub

Protoze formular byva uzamknut, je zapotrebi dokument odemknou/uzamknout pred volanim uvedenych procedur:

Kód: Vybrat vše

Sub HidenTextProtectDoc()
  With ActiveDocument
    If .ProtectionType <> wdNoProtection Then
      .Unprotect
      HiddenText
      .Protect Type:=wdAllowOnlyFormFields
    Else
      HiddenText
    End If
  End With
End Sub
Sub ShowTextProtectDoc()
  With ActiveDocument
    If .ProtectionType <> wdNoProtection Then
      .Unprotect
      ShowText
      .Protect Type:=wdAllowOnlyFormFields
    Else
      ShowText
    End If
  End With
End Sub

navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Excel 2003: Tvorba dynamického formuláře

Příspěvekod navstevnik » 28 lis 2010 13:13

V priloze je demo na skryti/zobrazeni casti uzivatelskeho formulare.
Přílohy
UseRFormHiddenShow.xls
(29 KiB) Staženo 204 x


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • EXCEL -jak otevřít 2 excel sobory abych je viděla současne a samostatně
    od Ketty02 » 30 srp 2024 21:19 » v Vše ostatní (sw)
    2
    4778
    od Riviera kid Zobrazit poslední příspěvek
    02 zář 2024 16:21
  • Hra ve Scratch - tvorba Příloha(y)
    od zuzana3 » 27 bře 2025 09:44 » v Hry
    9
    7482
    od zuzana3 Zobrazit poslední příspěvek
    10 dub 2025 12:57
  • Hra ve Scratch - tvorba
    od zuzana3 » 21 bře 2025 07:45 » v Hry
    5
    4344
    od zuzana3 Zobrazit poslední příspěvek
    26 bře 2025 09:48
  • Tvorba webu/aplikací
    od matty » 09 lis 2024 13:41 » v Programování a tvorba webu
    6
    4374
    od domitea Zobrazit poslední příspěvek
    14 lis 2024 19:51
  • Přechod z Excel 21 na Excel 24
    od Snekment » 29 led 2025 13:46 » v Kancelářské balíky
    2
    12191
    od Snekment Zobrazit poslední příspěvek
    29 led 2025 15:05

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

Kdo je online

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