Hogyan hozhat létre saját felosztott űrlapot az Accessben a VBA használatával

Oszd meg most:

Az Access felosztott űrlapjai rendkívül hasznosak. Sajnos nem működnek, ha egy navigációs űrlapon belül helyezi el őket. Ismerje meg, hogyan hozhat létre VBA-függvényt, amely szimulálja az Access osztott űrlap funkcióit, és még a navigációs űrlapon belül is működik.

A felosztott űrlap lehetővé teszi a rekordok két nézetét egyidejűleg – űrlapnézetben és adatlapnézetben. Lehetővé teszi, hogy áttekintést kapjon az összes rekordról, ugyanakkor lehetőséget ad azok egyenkénti megtekintésére és szerkesztésére.

Sajnos a felosztott űrlapok nem működnek, ha egy navigációs űrlapba helyezi őket – ez zavar engem. Még jó, hogy van megoldás erre. A VBA használatával létrehozhatja saját függvényét, amely szimulálja az Access felosztott űrlapját. Csak kövesse az alábbi lépéseket.

Töltse le most

Ha a lehető leghamarabb szeretnéd használni a funkciót, akkor a következőket teheted:

Töltse le a mintaadatbázist VBA-kódokkal most

Ellenkező esetben, ha barkácsolni szeretne, az alábbiakban olvashatja a tartalmat.

Lépések a saját felosztott űrlap létrehozásához az Accessben VBA használatával

1. Nyissa meg a felosztott űrlapot, és frissítse az alapértelmezett nézetet egyetlen űrlapra. Nyissa meg az osztott űrlapot, és frissítse az alapértelmezett nézetet egyetlen űrlapra

  1. Nyissa meg az osztott űrlapot.
  2. Tervezési nézetben válassza ki az űrlapot.
  3. Lépjen a Tulajdonságlapra (ALT + Enter) > Űrlap fülre.
  4. Az alapértelmezett nézet módosítása a következőre: Egyetlen űrlap.
  5. Zárja be az űrlapot és mentse.

2. Készítsen másolatot az űrlapról. Ez adatlap nézetként fog szolgálni.

  1. Lépjen a navigációs panelre.
  2. Kattintson a jobb gombbal az űrlapra, és válassza a Másolás lehetőséget.
  3. Kattintson jobb gombbal a navigációs ablak üres területére, és válassza a Beillesztés lehetőséget.
  4. Módosítsa az űrlap nevét. Add hozzá az „_Datasheet”-hez.

Példa:

  • Forma: Tagok
  • Az űrlap másolata: Members_Datasheet

3. Nyissa meg az Adatlap űrlapot, és frissítse az űrlapnézet tulajdonságait.

  1. Nyissa meg az Adatlap űrlapot.
  2. Tervezési nézetben válassza ki az űrlapot.
  3. Lépjen a Tulajdonságlap > Űrlap fülre.
  4. Frissítse a következő tulajdonságokat:
    • Alapértelmezett nézet: Adatlap
    • Adatlap nézet engedélyezése: Igen
    • Űrlapnézet engedélyezése: Nem
  5. Zárja be az űrlapot és mentse.

4. Nyissa meg újra a Fő űrlapot, és adja hozzá az Adatlap űrlapot alűrlapként.

  1. Nyissa meg a fő űrlapot (a másolt űrlapot) a tervezési nézetben.
  2. Alűrlap hozzáadása.
    • Lépjen a Tervezés menübe. Válassza az Alűrlap/Aljelentés lehetőséget.Válassza az Alűrlap lehetőséget
    • Kattintson az űrlap Részletek területére.
    • Megjelenik az Alűrlap varázsló.Az Alűrlap varázsló

1. Kattintson a "Meglévő űrlap használata" lehetőségre.

2. Válassza ki az adatlap űrlapját.

3. Kattintson a Tovább gombra.Válassza a "Saját meghatározása" lehetőséget

4. Válassza a „Saját meghatározása” lehetőséget.

5.Kattintson a Befejezés gombra.

3. Az adatlap űrlap mostantól a fő űrlap alűrlapja. Állítsa be a kívánt méretre és pozícióra.

5. Végül adja hozzá a kódot.

  1. Nyissa meg a VBA-szerkesztőt (ALT + F11).
  2. Válassza ki a fő űrlapot, és illessze be a következő kódot.Válassza ki a fő űrlapot, és illessze be a kódot
'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
  1. A kód másolása után cserélje ki a szó összes előfordulását Members_Datasheet az adatlap űrlapjának tényleges nevével.
  2. Ha kész, válassza ki az Adatlap űrlapot a Projekt menüből, és másolja ki az alábbi kódot.
'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
  1. Frissítse a következő változók értékeit:
  • pk_tbox – az elsődleges kulcsot tartalmazó szövegdobozra utal.
  • pk_field – a rekordforrás elsődleges kulcs mezőjére utal.

Mindegyikük egy csillaggal (*) van a megjegyzés rovatban, így könnyen megtalálhatja őket.

  1. Ha kész, mentse el a változtatásokat (CTRL + S), és zárja be a VBA-szerkesztőt.

Most hozzáadhatja saját osztott űrlapját a navigációs űrlapon belül. Próbáld ki!

A sérült hozzáférési adatbázis (.accdb) javítása

Sok oka lehet annak, hogy egy Access-adatbázis megsérül. Sajnos a legtöbbjükre nincs ráhatásunk. Ha mégis megtörténik, ne feledje, hogy továbbra is van mód a helyreállítására. DataNumen Inc. olyan szoftvert hozott létre, amely teljesíti accdb javítás. Nézd meg.

Szerző Bevezetés:

Jayme Stack adat-helyreállítási szakértő DataNumen, Inc., amely világelső az adat-helyreállítási technológiák területén, beleértve sql helyreállítás és Excel helyreállítási szoftvertermékek. További információért látogasson el www.datanumen.com

Oszd meg most:

Hozzászólások lezárva.