Weten hoe het huidige record te vergelijken met een eerdere record in Microsoft Office Access kan u helpen repetitieve data te identificeren . Access is een relationele database management systeem vaak gebruikt om lokale databases te ontwerpen . Een query wordt gebruikt om gegevens uit de database tabellen halen . Visual Basic for Applications ( VBA ) is een programmeertaal die wordt gebruikt om routinematige taken in Access te automatiseren . In een paar stappen kunt u VBA schrijven voor het doorlussen van de resultaten van een query . Instructies 1 Open de Noordenwind Microsoft Office Access-database . De database Noordenwind is opgenomen in de Microsoft Office suite . Selecteer in het menu "Invoegen " en klik Type 2 het volgende om uw variabelen te verklaren " Module . " : Dim rst als Recordset Dim dbs als Database Dim queryStr als Koord Dim qryPrev als Koord Dim qryCurrent als Koord Dim rstCnt als Geheel Set dbs = CurrentDb Type 3 het volgende aan de " leveranciers " table opvragen: queryStr = " SELECT Suppliers.Company , " queryStr = queryStr & " leveranciers [ Achternaam ] , " queryStr = queryStr & " leveranciers [ Voornaam ] " queryStr = queryStr & " FROM leveranciers ; . ". 4 Typ het volgende om een nieuwe Recordset openen : Set rst = dbs.OpenRecordset ( queryStr ) op rst.MoveLast rst.MoveFirst 5 Typ het volgende om lus door de records in de record set en vergelijk het huidige record met het vorige record : rstCnt = 0 Om rst.RecordCount - 1 qryPrev = rst . velden ( "Bedrijf " ) . Value qryPrev = qryPrev & rst.Fields ( " [ Naam ] " ) . Value qryPrev = qryPrev & rst.Fields ( " [ Voornaam ] " . ) Value Als rstCnt < > rst.RecordCount - 1 dan rst.MoveNext qryCurrent = rst.Fields ( " . Vennootschap " ) Value < br qryCurrent > = qryCurrent & rst.Fields ( " [ Naam ] " ) . Value qryCurrent = qryCurrent & rst.Fields ( " [ Voornaam ] " ) . Value Als qryPrev = qryCurrent Debug.Print dan " Vorige record is identiek aan huidige record . " Debug.Print qryPrev Debug.Print qryCurrent End If Else Debug.Print " Afgelopen vergelijken van alle records . " End Als Volgende rstCnt 6 Typ het volgende om variabelen te wissen uit het geheugen : . rst.Close dbs.Close Druk op " F5 " aan de subroutine draaien
|