Rozdělené formuláře v Accessu jsou mimořádně užitečné. Bohužel nefungují, když je umístíte do navigačního formuláře. Zjistěte, jak můžete vytvořit funkci VBA, která bude simulovat funkce rozděleného formuláře aplikace Access a umožní ji fungovat i uvnitř navigačního formuláře.
Rozdělený formulář vám umožňuje mít dva pohledy na vaše záznamy současně – formulářové zobrazení a zobrazení datového listu. Umožňuje vám mít přehled o všech vašich záznamech a zároveň vám dává možnost je prohlížet a upravovat jeden po druhém.
Bohužel, rozdělené formuláře nebudou fungovat, když je vložíte do navigačního formuláře – něco, co mě mate. Dobře, že na to existuje řešení. Pomocí VBA můžete vytvořit svou vlastní funkci, která bude simulovat rozdělený formulář Accessu. Postupujte podle níže uvedených kroků.
Stáhnout nyní
Pokud chcete tuto funkci začít používat co nejdříve, můžete:
Stáhněte si nyní ukázkovou databázi s kódy VBA
Jinak si můžete přečíst obsah níže, pokud si chcete udělat kutilství.
Kroky k vytvoření vlastního rozděleného formuláře v Accessu pomocí VBA
1. Otevřete svůj rozdělený formulář a aktualizujte výchozí zobrazení na jeden formulář. 
- Otevřete svůj rozdělený formulář.
- V návrhovém zobrazení vyberte formulář.
- Přejděte na list vlastností (ALT + Enter) > karta Formulář.
- Změnit výchozí zobrazení na: Jeden formulář.
- Zavřete formulář a uložte.
2. Vytvořte kopii formuláře. To bude sloužit jako zobrazení datového listu.
- Přejděte na navigační panel.
- Klikněte pravým tlačítkem na svůj formulář a vyberte Kopírovat.
- Klikněte pravým tlačítkem na prázdnou oblast v navigačním panelu a vyberte Vložit.
- Změňte název formuláře. Připojte jej pomocí „_Datasheet“.
Příklad:
- Forma: Členové
- Kopie formuláře: Members_Datasheet
3. Otevřete formulář datového listu a aktualizujte jeho vlastnosti zobrazení formuláře.
- Otevřete formulář datového listu.
- V návrhovém zobrazení vyberte formulář.
- Přejděte na kartu Vlastnosti > Formulář.
- Aktualizujte následující vlastnosti:
- Výchozí zobrazení: list
- Povolit zobrazení datového listu: Ano
- Povolit zobrazení formuláře: Ne
- Zavřete formulář a uložte.
4. Znovu otevřete hlavní formulář a přidejte formulář datového listu jako podformulář.
- Otevřete hlavní formulář (ten, který byl zkopírován) v návrhovém zobrazení.
- Přidejte podformulář.
- Přejděte do nabídky Design. Vyberte Podformulář/Podsestava.
- Klikněte na oblast podrobností formuláře.
- Zobrazí se Průvodce podformulářem.
- Přejděte do nabídky Design. Vyberte Podformulář/Podsestava.
1. Klikněte na 'Použít existující formulář'.
2. Vyberte formulář datového listu.
3. Klikněte na Další.
4. Vyberte možnost „Definovat vlastní“.
5.Click Dokončit.
3. Formulář datového listu je nyní podformulářem vašeho hlavního formuláře. Upravte jej na požadovanou velikost a polohu.
5. Nakonec přidejte kód.
- Otevřete editor VBA (ALT + F11).
- Vyberte hlavní formulář a vložte následující kód.
'MAIN FORM Option Explicit Private Sub Form_AfterUpdate() Me.Members_Datasheet.Requery End Sub Private Sub Form_Current() If Me.NewRecord Then Me.Members_Datasheet.Form.Recordset.AddNew Else Me.Members_Datasheet.Requery End If End Sub
- Po zkopírování kódu nahraďte všechny výskyty slova Members_Datasheet se skutečným názvem formuláře datového listu.
- Až budete hotovi, vyberte svůj datový list z nabídky Projekt a zkopírujte níže uvedený kód.
'SUBFORM/DATASHEET FORM Option Explicit Private Sub Form_AfterUpdate() Me.Parent.Form.Requery End Sub Private Sub Form_Current() Dim pk_field As String, pk_tbox As Control Dim primaryKey As String, strSearch As String Set pk_tbox = Me.Member_ID 'textbox containing primary key * pk_field = "Member_ID" 'primary key field name * primaryKey = Nz(pk_tbox.Value, 0) 'change value to 0 if null pk_field = "[" & pk_field & "]" 'enclose field name with brackets If primaryKey <> 0 Then 'if not null (or not a new record) strSearch = pk_field & "=" & primaryKey Me.Parent.Recordset.FindFirst strSearch Else Me.Parent.Form.Recordset.AddNew End If End Sub
- Aktualizujte hodnoty pro následující proměnné:
- pk_tbox – odkazuje na textové pole obsahující primární klíč.
- pk_field – odkazuje na pole primárního klíče zdroje záznamů.
Každý z nich má v sekci komentářů hvězdičku (*), abyste je snadno našli.
- Po dokončení uložte změny (CTRL + S) a zavřete editor VBA.
Nyní můžete do navigačního formuláře přidat svůj vlastní rozdělený formulář. Vyzkoušej to!
Opravit poškozenou databázi přístupu (.accdb)
Existuje mnoho důvodů, proč se databáze Accessu poškodí. Bohužel nad většinou z nich nemáme kontrolu. Pokud se vám to stane, nezapomeňte, že stále existuje způsob, jak ji obnovit. DataNumen Inc. vytvořila software, který funguje accdb oprava. Koukni na to.
Úvod autora:
Jayme Stack je expert na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně zotavení sql a excelové softwarové produkty pro obnovu. Pro více informací navštivte www.datanumen.com



