Kuinka luoda oma jaettu lomake Accessissa VBA: n avulla

Jaetut lomakkeet Accessissa ovat erittäin hyödyllisiä. Valitettavasti ne eivät toimi, kun sijoitat ne navigointilomakkeeseen. Opi luomaan VBA-toiminto, joka simuloi Accessin jaetun muodon toimintoja ja saa sen toimimaan myös navigointilomakkeen sisällä.

Jaetun lomakkeen avulla sinulla on kaksi tietueiden näkymää samanaikaisesti - lomakkeenäkymä ja taulukkonäkymä. Sen avulla voit saada yleiskuvan kaikista tietueistasi ja samalla antaa sinulle mahdollisuuden tarkastella ja muokata niitä yksitellen.

Valitettavasti jaetut lomakkeet eivät toimi, kun laitat ne navigointilomakkeen sisään - mikä hämmentää minua. Hyvä asia on kiertotapa. VBA: n avulla voit luoda oman toiminnon, joka simuloi Accessin jaettua muotoa. Seuraa vain alla olevia ohjeita.

Lataa nyt

Jos haluat aloittaa ominaisuuden käytön mahdollisimman pian, voit:

Lataa näytetietokanta VBA-koodeilla nyt

Muussa tapauksessa voit lukea sisällön alla olevasta sisällöstä.

Vaiheet oman jaetun lomakkeen luomiseen Accessissa VBA: n avulla

1. Avaa jaettu lomake ja päivitä oletusnäkymä yhdeksi lomakkeeksi. Avaa jaettu lomake ja päivitä oletusnäkymä yhdeksi lomakkeeksi

  1. Avaa jaettu lomake.
  2. Valitse muotoilunäkymässä muoto.
  3. Siirry Ominaisuusarkki (ALT + Enter)> Lomake-välilehdelle.
  4. Vaihda oletusnäkymäksi: Yksi lomake.
  5. Sulje lomake ja tallenna.

2. Luo kopio lomakkeesta. Tämä toimii taulukkonäkymänä.

  1. Siirry navigointiruutuun.
  2. Napsauta hiiren kakkospainikkeella lomakettasi ja valitse Kopioi.
  3. Napsauta hiiren kakkospainikkeella tyhjää aluetta siirtymisruudussa ja valitse Liitä.
  4. Vaihda lomakkeen nimi. Liitä se kohtaan "_Datasheet".

Esimerkiksi:

  • Lomake: Jäsenet
  • Kopio lomakkeesta: Members_Datasheet

3. Avaa taulukkolomake ja päivitä sen lomakkeenäkymän ominaisuudet.

  1. Avaa taulukkolomake.
  2. Valitse muotoilunäkymässä muoto.
  3. Siirry Ominaisuusarkki> Lomake-välilehdelle.
  4. Päivitä seuraavat ominaisuudet:
    • Oletusnäkymä: Datalehdet
    • Salli taulukkonäkymä: Kyllä
    • Salli lomakkeenäkymä: Ei
  5. Sulje lomake ja tallenna.

4. Avaa päälomake uudelleen ja lisää taulukkolomake alilomakkeena.

  1. Avaa päälomake (kopioitu) suunnittelunäkymässä.
  2. Lisää alilomake.
    • Siirry Suunnittelu-valikkoon. Valitse Subform / Subreport.Valitse Subform
    • Napsauta lomakkeen Tiedot-aluetta.
    • Ohjattu alamuoto-ohjattu toiminto tulee näkyviin.Ohjattu alamuoto

1. Napsauta Käytä olemassa olevaa lomaketta.

2. Valitse lomakkeesi.

Napsauta Seuraava.Valitse 'Määritä oma'

4. Valitse 'Määritä oma'.

5. Napsauta Valmis.

3. Taulukkolomake on nyt päälomakkeen alilomake. Säädä se haluamaasi kokoon ja asentoon.

5. Lisää lopuksi koodi.

  1. Avaa VBA-editori (ALT + F11).
  2. Valitse päälomake ja liitä seuraava koodi.Valitse päälomake ja liitä koodi
'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. Kun olet kopioinut koodin, korvaa kaikki sanan esiintymät Jäsenet_Tietolomake tietolomakkeen todellisen nimen kanssa.
  2. Kun olet valmis, valitse taulukkolomake projekti-valikosta ja kopioi alla oleva koodi.
'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. Päivitä seuraavien muuttujien arvot:
  • pk_tbox - viittaa tekstiruutuun, joka sisältää ensisijaisen avaimen.
  • pk_kenttä - viittaa tietueen lähteen ensisijaiseen avainkenttään.

Heillä kaikilla on tähti (*) kommenttiosassa, jotta voit löytää ne helposti.

  1. Kun olet valmis, tallenna muutokset (CTRL + S) ja sulje VBA-editori.

Nyt voit lisätä oman jaetun lomakkeen navigointilomakkeen sisälle. Kokeile!

Korjaa vioittunut pääsytietokanta (.accdb)

Access-tietokannan vioittumiseen voi olla monia syitä. Valitettavasti meillä ei ole hallintaa useimpiin niistä. Jos näin käy sinulle, muista, että sen voi silti palauttaa. DataNumen Inc. on luonut ohjelmiston, joka toimii accdb-korjaus. Tarkista se.

Tekijän esittely:

Jayme Stack on tietojen palauttamisen asiantuntija DataNumen, Inc., joka on maailman johtava tietojen palautustekniikoissa, mukaan lukien sql-palautus ja Excel-palautusohjelmistotuotteet. Lisätietoja osoitteessa www.datanumen.com

Kommenttien lisääminen on estetty.