Az Asztali Access-adatbázisokban és az Access-webappokban a GoToControl makróművelet segítségével áthelyezheti a fókusz a megnyitott űrlap, űrlap adatlap, táblaadatlap vagy lekérdezési adatlap aktuális rekord megadott mező vagy vezérlő. Ezt a műveletet akkor használhatja, ha azt szeretné, hogy egy adott mező vagy vezérlőelem legyen a fókuszban. Ez a mező vagy vezérlőelem ezután használható összehasonlításokhoz vagy Rekordok keresése műveletekhez. Ezt a műveletet arra is használhatja, hogy bizonyos feltételeknek megfelelően navigáljon az űrlapon. Ha például a felhasználó a Nem értéket adja meg egy egészségbiztosítási űrlap Házasok vezérlőelemében, a fókusz automatikusan átugorhatja a Házastárs neve vezérlőt, és továbbléphet a következő vezérlőre.
Beállítás
A GoToControl művelet argumentuma a következő.
Művelet argumentuma |
Leírás |
Vezérlő neve |
Írja be annak a mezőnek vagy vezérlőelemnek a nevét, ahová a fókuszt helyezni szeretné. Ez egy kötelező argumentum. Megjegyzés: Csak a mező vagy vezérlőelem nevét adja meg a Vezérlőnév argumentumban, a teljes azonosítót nem, például :[Forms]! [Termékek]! [Termékazonosító] asztali Access-adatbázis használata esetén. |
Megjegyzések
A GoToControl makróművelet nem használható arra, hogy a fókuszt egy rejtett űrlap vezérlőelemére helyezze.
Tipp: A GoToControl makróművelet segítségével léphet egy segédűrlap, amely egy vezérlőtípus. Ezután a Rekordra ugrás művelet használatával a segédűrlap egy adott rekordjára léphet. Az segédűrlap vezérlőire úgy is ugorhat, hogy a GoToControl művelet segítségével először a segédűrlapra, majd a segédűrlap vezérlőelemére lép.
A GoToControl művelet Visual Basic for Applications (VBA) modulban való futtatásához használja a DoCmd objektum GoToControl metódusát. A SetFocus metódussal áthelyezheti a fókuszt egy űrlap vagy segédűrlap vezérlőelemére, illetve egy megnyitott tábla, lekérdezés vagy űrlap adatlapjának egy mezőjére.
Példák
Vezérlőelem értékének beállítása makróval
A következő makró a Szállítók űrlap egy gombját választva megnyitja a „Termékek hozzáadása” űrlapot. Az Echo, a Bezárás, az OpenForm, a SetValue és a GoToControl műveletek használatát mutatja. Az Értékbeállítás művelet a Szállítók űrlap aktuális szállítójára állítja be a Termékek űrlap Szállítóazonosító vezérlőelemét. A VezérlőelemreUgrás művelet ezután átviszi a fókuszt a Kategóriaazonosító mezőre, ahol megkezdheti az új termék adatainak megadását. Ezt a makrót a Szállítók űrlap „Termékek hozzáadása” gombjához kell csatolni.
Művelet |
Argumentumok: Beállítás |
Megjegyzés |
Visszhang |
Visszhang be: Nem |
Leállítja a képernyő frissítését a makró futásának idejére. |
Bezárás |
Objektumtípus: Űrlap Objektumnév: Terméklista Mentés: Nem |
Zárja be a Terméklista űrlapot. |
ŰrlapMegnyitása |
Űrlap neve: Termékek Nézet: Űrlap Adathozzáférési mód: Hozzáadás Megnyitási mód: Normál |
Megnyitja a Termékek űrlapot. |
Értékbeállítás |
Elem: [Forms]![Termékek]![Szállítóazonosító] Kifejezés: Szállítóazonosító |
Beállítja a Szállítóazonosító vezérlőelemet a Szállítók űrlap aktuális szállítójára. |
VezérlőelemreUgrás |
Vezérlőelemnév: Kategóriaazonosító |
A Kategóriaazonosító vezérlőelemre ugrik. |
Adatok érvényesítése makróval
Az alábbi érvényesítési makró ellenőrzi a Szállítók űrlapon megadott irányítószámokat. A StopMacro, MessageBox, CancelEvent és GoToControl műveletek használatát mutatja. A feltételes kifejezés ellenőrzi az űrlapon egy rekordban megadott országot/régiót és irányítószámot. Ha az irányítószám nem a megfelelő formátumú az országhoz/régióhoz, a makró megjelenít egy üzenetmezőt, és megszakítja a rekord mentését. A makró ezután visszaadja az Irányítószám vezérlőelemet, ahol kijavíthatja a hibát. Ezt a makrót a Szállítók űrlap BeforeUpdate tulajdonságához kell csatolni.
Feltétel |
Művelet |
Argumentumok: Beállítás |
Megjegyzés |
If IsNull([CountryRegion]) |
StopMacro |
Ha a CountryRegion értéke Null, az irányítószám nem érvényesíthető. |
|
Ha [CountryRegion] In ("Franciaország","Olaszország","Spanyolország") and Len([Irányítószám]) <> 5 |
Üzenetpanel |
Üzenet: Az irányítószámnak 5 karakternek kell lennie. Hangjelzés: Igen Típus: Információ Cím: Irányítószám-hiba |
Ha az irányítószám nem 5 karakter, jelenítsen meg egy üzenetet. |
Mégsevent |
Szakítsa meg az eseményt. |
||
VezérlőelemreUgrás |
Vezérlőelem neve: Irányítószám |
||
Ha [CountryRegion] In ("Australia","Szingapúr") and Len([Irányítószám]) <> 4 |
Üzenetpanel |
Üzenet: Az irányítószámnak 4 karakternek kell lennie. Hangjelzés: Igen Típus: Információ Cím: Irányítószám-hiba |
Ha az irányítószám nem 4 karakter, jelenítsen meg egy üzenetet. |
Mégsevent |
Szakítsa meg az eseményt. |
||
VezérlőelemreUgrás |
Vezérlőelem neve: Irányítószám |
||
If ([CountryRegion] = "Canada") And ([Irányítószám] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]") |
Üzenetpanel |
Üzenet: Az irányítószám érvénytelen. Példa kanadai kódra: H1J 1C3 Hangjelzés: Igen Típus: Információ Cím: Irányítószám-hiba |
Ha az irányítószám kanadához nem megfelelő, megjeleníthet egy üzenetet. (Példa kanadai kódra: H1J 1C3) |
Mégsevent |
Szakítsa meg az eseményt. |