ez az Access-oktatóanyag bemutatja, hogyan hozhat létre több kritériumot tartalmazó keresési űrlapot.
érdemes lehet olvasni:
hozzáférés a DoCmd-hez.OpenForm módszer az Access űrlap megnyitásához
access Combo Box értéke egy másik Combo boxtól függ
hozzáférési űrlap megadása Az Access jelentéshez vagy űrlaphoz vagy lekérdezéshez
Access több feltételű keresési űrlap létrehozása
néha létre kell hoznia egy keresési űrlapot, ahol a felhasználók kiválaszthatnak bizonyos feltételeket. A legegyszerűbb megoldás az egyes mezők adatainak közvetlen szűrése, például az AutoFilter használata az Excelben, de ez egyáltalán nem elegáns.
az Access A Filter by Form nevű Űrlapfunkciót biztosítja, amely nagyon könnyen használható.
táblázat/lekérdezés kiválasztása > > űrlap létrehozása > szűrő/Rendezés alkalmazása
most több kritériumot is kiválaszthat, akár egy értéket is kiválaszthat legördülő doboz. Azonban ezek az értékek a legördülő dobozok függetlenek egymástól.
az Or kritériumokat a vagy fülre kattintva is használhatja.
ha a kiválasztás megtörtént, kattintson a szűrő váltása gombra
a szűrés jobb módja, ha a felhasználók a függő legördülő mezők közül választhatnak.
például az első legördülő mezőben a felhasználók az a osztályt választják, majd a második legördülő mezőben a felhasználók megtekinthetik az A osztály személyeinek listáját.
ez a cikk megmutatja, hogyan kell elvégezni az ilyen szűrést.
eredmény űrlap létrehozása
tegyük fel, hogy van egy lekérdezés az alábbiak szerint. Célunk, hogy lehetővé tegyük a felhasználók számára, hogy kiválasszák a részleget az alkalmazottak adatainak megjelenítéséhez, vagy válasszuk a részleg + alkalmazott azonosítót.
készítünk egy “eredményűrlapot”, amely megmutatja a keresési eredményt.
osztály | Munkavállalói azonosító | foglalkoztatási Dátum | fizetés | juttatás |
---|---|---|---|---|
számla | 1 | 1/1/2000 | 10000 | 100 |
Admin | 2 | 1/1/2001 | 20000 | 200 |
Admin | 3 | 1/1/2002 | 30000 | 300 |
Admin | 4 | 1/1/2003 | 40000 | 400 |
bérszámfejtés | 5 | 1/1/2004 | 50000 | 500 |
HR | 6 | 1/1/2005 | 60000 | 600 |
kattintson a lekérdezésre, majd a Létrehozás fülre, válassza a további űrlapok > adatlap lehetőséget
Most mentse el az űrlapot result_frm formátumban. Abban az esetben, ha véletlenül megváltoztatná az eredményadatokat, az egyes szövegmezők zárolt tulajdonságát Igen értékre kell módosítania
ebben a példában a Query1 összes mezőjét szeretném eredmény formájában visszaadni. Azért választok adatlapot, mert minden rekord egy sorban jeleníthető meg vízszintes görgetősávval. Nem szeretek folyamatos vagy egyetlen űrlapot használni, mert minden rekord több sorban jelenik meg.
hozzon létre egy keresési űrlapot
hozzon létre egy üres űrlapot, majd adjon hozzá két kombinált mezőt (Combo_Dept, Combo_EmpID) és egy gombot (search_btn) az alábbiak szerint.
1) Kattintson a Combo_Dept elemre, a Row Source tulajdonságba írja be a
SELECT DISTINCT Department FROM Query1;
Sort forrás az, amit kiválaszthat a Comboboxban.
2) Kattintson a Combo_EmpID elemre, a row Source tulajdonságban írja be
SELECT FROM Query1 WHERE =!!;
3) Válassza a Combo_Dept lehetőséget, válassza az Update Event lehetőséget, és készítse el az alábbi eljárást
Private Sub Combo_Dept_AfterUpdate() Me.Combo_EmpID = Null Me.Combo_EmpID.RequeryEnd Sub
amikor kiválaszt egy osztályt, a Combo_EmpID nullára áll vissza, majd futtassa újra a lekérdezést
4) Kattintson a jobb gombbal a search_btn elemre, majd válassza a Build Event lehetőséget
Private Sub search_btn_Click() If IsNull(Me.Combo_EmpID) Then searchCriteria = "='" & Me.Combo_Dept & "'" searchSQL = "Select * FROM Query1 where " & searchCriteria Else searchCriteria = "='" & Me.Combo_Dept & "' AND =" & Me.Combo_EmpID searchSQL = "Select * FROM Query1 where " & searchCriteria End If DoCmd.OpenForm "result_frm", 3, searchSQLEnd Sub
most sikeresen létrehozott egy egyszerű keresési űrlapot. Miután kiválasztotta a feltételeket a keresési űrlapon, miután rákattintott a Keresés gombra, megjelenik az Eredményűrlap, amely megjeleníti az eredményt.