Kā ātri dublēt ierakstus savā piekļuvē

Kopīgot tūlīt:

Uzziniet, kā izveidot VBA funkciju, kas ļauj noklikšķināt uz noteiktiem datiem no iepriekšējiem ierakstiem, tikai noklikšķinot uz pogas. Nav nepieciešams atkārtoti rakstīt vienas un tās pašas lietas.

Vai jums kādreiz ir bijusi pieredze, kad programmā Access jāievada jauns ieraksts, kuram ir tieši tāds pats vērtību kopums kā iepriekšējam ierakstam, izņemot vienu lauku? Tas var būt nogurdinošs, vai ne? Šī apmācība iemācīs jums izveidot funkciju, kuru, noklikšķinot uz pogas, varat kopēt noteiktas iepriekšējā ieraksta vērtības - ietaupot laiku no atkārtotas rakstīšanas. Vienkārši izpildiet tālāk norādītās darbības.

Lejupielādēt tagad

Ja vēlaties sākt lietot šo funkciju pēc iespējas ātrāk, varat:

Lejupielādējiet paraugdatu bāzes ar VBA kodiem tūlīt

Pretējā gadījumā, ja vēlaties DIY, varat izlasīt tālāk sniegto saturu.

Darbības, lai programmā Access pievienotu funkciju “Izveidot ieraksta kopiju”

  1. Atveriet savu veidlapu noformējuma skatā.Atveriet savu veidlapu noformējuma skatā
  2. Pievienojiet komandas pogu. Izlaidiet komandu pogas vedni.
  3. Pievienojiet Uz klikšķa notikumu uz pogas.Pievienojiet pogai notikumu ar klikšķi
  • Atrodoties noformējuma skatā, atlasiet pogu.
  • Atvērt rekvizītu lapu (ALT + Enter)
  • Dodieties uz cilni Notikums> Uz klikšķa>…
  • Kad Izvēlieties Builder tiek parādīta izvēlne, atlasiet Code Builder.
  • Noklikšķiniet uz Labi.
  • Tādējādi tiks atvērts VBA redaktors.
    1. Kopējiet šo kodu un modificējiet to atbilstoši savām vajadzībām. Izmantojiet komentārus kā ceļvedi.
    Private Sub Command24_Click()
        Dim currentID As Long
     
        'TO DO: change all instances of 'BookID' with the actual name of your table's ID or primary key
     
        If IsNull(BookID) Then
            MsgBox prompt:="Please select the record to copy first.", buttons:=vbExclamation
            Exit Sub
        End If
     
        currentID = BookID
        DoCmd.GoToRecord record:=acNewRec
     
        'TO DO: set the fields to be copied (those that most likely will have the same values)
        'FORMAT: fieldName = Dlookup("fieldname", "tableName", "primaryKeyField=" & currentID)
     
         Author = DLookup("Author", "Books", "BookID=" & currentID)
         Country = DLookup("Country", "Books", "BookID=" & currentID)
         Language = DLookup("Language", "Books", "BookID=" & currentID)
         Genre = DLookup("Genre", "Books", "BookID=" & currentID)
         Publisher = DLookup("Publisher", "Books", "BookID=" & currentID)
     
         Title.SetFocus ‘TO DO: change 'Title' with name of field that is going to be edited by the user
     
    End Sub
  1. Tagad pārbaudiet kodu, ja tas darbojas.

Kods izskaidrots

Iepriekš minētais kods tika izmantots grāmatnīcas datu bāzei. Grāmatu sēriju dēļ ir gadījumi, kad visa grāmatas informācija (piemēram, autors, valsts, valoda utt.) Ir vienāda, izņemot vienu lauku - virsrakstu. Tādējādi koda nepieciešamība.

Zemāk redzamais saraksts parāda programmas plūsmu.

  1. Pārbaudiet, vai lietotājs ir izvēlējies kopējamo ierakstu. Ja lietotājs noklikšķina uz pogas tūlīt pēc noklikšķināšanas uz pogas Pievienot jaunu ierakstu, tiek parādīts kļūdas ziņojums - ID tiek padarīts par nulli.
If IsNull(BookID) Then
     MsgBox prompt:="Please select the record to copy first.", buttons:=vbExclamation
     Exit Sub
End If
  1. Iegūstiet pašreizējā ieraksta ID vai primāro atslēgu un piešķiriet to kā vērtību pašreizējais ID Tas tiks izmantots kā kopējamo vērtību pamats.
currentID = BookID
  1. Pievienojiet jaunu ierakstu.
DoCmd.GoToRecord record:=acNewRec
  1. Iestatiet vērtību noteiktiem laukiem, pamatojoties uz pašreizējais ID Šeit dati tiek kopēti no atlasītā ieraksta.
'FORMAT: fieldName = Dlookup("fieldname", "tableName", "primaryKeyField=" & currentID)

Author = DLookup("Author", "Books", "BookID=" & currentID)
Country = DLookup("Country", "Books", "BookID=" & currentID)
Language = DLookup("Language", "Books", "BookID=" & currentID)
Genre = DLookup("Genre", "Books", "BookID=" & currentID)
Publisher = DLookup("Publisher", "Books", "BookID=" & currentID)
  1. Iestatiet fokusu uz lauku, kuru lietotājs, visticamāk, rediģēs pirmais. Tas uzlabo lietotāja pieredzi, jo novērš nepieciešamību lietotājam manuāli atlasīt lauku, kas vēl ir jāatjaunina.
 Title.SetFocus      ‘TO DO: change 'Title' with name of field that is going to be edited by the user

Salabot bojātu datu bāzi

Ja neveiksmīga iemesla dēļ jūs vienu dienu pamodaties, nevarot atvērt savu datu bāzi, varat izmēģināt trešo pušu rīkus, kas darbojas Piekļuves remonts. Tas rada brīnumus.

Autora ievads:

Džeims Steks ir datu atkopšanas eksperts DataNumen, Inc., kas ir pasaules līderis datu atkopšanas tehnoloģiju, tostarp sql atgūšana un Excel atkopšanas programmatūras produkti. Lai iegūtu vairāk informācijas, apmeklējiet vietni www.datanumen. Ar

Kopīgot tūlīt:

Komentāri ir slēgti.