Hvordan man kan sammenligne en Forrige Post i Access Query

Å vite hvordan man skal sammenligne den nåværende rekorden med en tidligere rekord i Microsoft Office Access kan hjelpe deg med å identifisere repetitive data. Access er en relasjonsdatabase styringssystem som vanligvis brukes til å utforme lokale databaser. En spørring blir brukt til å hente data fra databasetabeller. Visual Basic for Applications (VBA) er et programmeringsspråk som brukes til å automatisere rutineoppgaver i Access. I noen få trinn kan du skrive VBA å sløyfe gjennom resultatene av en spørring.

Bruksanvisning

1 Åpne North Microsoft Office Access database. The Northwind database er inkludert i Microsoft Office-pakken. Velg "Insert" -menyen og klikk på "Module".

2 Skriv inn følgende å erklære variabler:

Dim rst As Recordset

Dim dbs som database

Dim queryStr As String

Dim qryPrev As String

Dim qryCurrent As String

Dim rstCnt As Integer

Sett dbs = CurrentDb

3 Skriv inn følgende for å søke på "Leverandører" tabell:

queryStr = "SELECT Suppliers.Company,"

queryStr = queryStr & "leverandører. [etternavn]"

queryStr = queryStr & "leverandører. [fornavn]"

queryStr = queryStr & "fra leverandører;"

4 Skriv inn følgende for å åpne en ny Recordset:

Sett rst = dbs.OpenRecordset (queryStr)

rst.MoveLast

rst.MoveFirst

5 Skriv inn følgende å sløyfe gjennom postene i Recordset og sammenligne gjeldende rekord med den forrige posten:

For rstCnt = 0 For å rst.RecordCount - 1

qryPrev = rst.Fields("Company").Value

qryPrev = qryPrev & rst.Fields ( "[etternavn]"). Verdi

qryPrev = qryPrev & rst.Fields ( "[fornavn]"). Verdi

Hvis rstCnt & lt;> rst.RecordCount - 1 Da

rst.MoveNext

qryCurrent = rst.Fields ( "Selskapet"). Verdi

qryCurrent = qryCurrent & rst.Fields ( "[etternavn]"). Verdi

qryCurrent = qryCurrent & rst.Fields ( "[fornavn]"). Verdi

Hvis qryPrev = qryCurrent Deretter

Debug.Print "Forrige Record er identisk med gjeldende rekord."

Debug.Print qryPrev

Debug.Print qryCurrent

Slutt om

Ellers

Debug.Print "ferdig sammenligne alle rekorder."

Slutt om

Neste rstCnt

6 Skriv inn følgende for å fjerne variabler fra minnet:

rst.Close

dbs.Close

Trykk "F5" for å kjøre subrutine.