Toon posts:

[Access97]Records opnieuw tellen

Pagina: 1
Acties:

Verwijderd

Topicstarter
Als ik het formulier start in Access 97 dan laat ik alle artikelen tellen die er totaal in de recordset zitten.. En dat doet hij goed.. hij geeft ook het goede aantal records aan..

Maar het probleem zit hem in het opnieuw tellen..
Als ik een record in Acces 97 aanmaak met dit formulier dan wil ik dat alle records nadat het nieuwe record gemaakt is opnieuw geteld worden..
Zie code hier:


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub Tellen(frm As Form)

Dim flt As String                       'filter in SQL-recordsets
Dim dbs As Database                'database met alle gegevens
Dim rstcount As Recordset       'SQL-recordset
Dim rcs As Long                      'aantal records in filter

fltr = "Isnull(Stort) And Isnull(Intern) And Isnull(Sloop)"
dbs = CurrentDb
Set rstcount = dbs.OpenRecordset("SELECT Artikel FROM T_Invoer WHERE " & flt & ";")

If rstcount.EOF Then
rcs = 0
Else
rstcount.MoveLast                       'Let op: nieuw ingevoerd artikel wordt niet meegeteld!!!!
rcs = rstcount.RecordCount
frm.AantalRecords = rcs
End If
rstcount.Close

MsgBox "Resultaat van de procedure 'Tellen': " & rcs

End Sub


Als het tellen gedaan is dan geef hij nog steeds evenveel artikelen aan als dat hij bij de eerste keer tellen ook aangaf.. Ik heb op google ook al lang zitten zoeken naar een oplossing maar daar heb ik ook niks kunnen vinden..

Handmatig de teller 1 omhoog doen dat zou kunnen .. maar ik gebruik de teller bij veel meer dingen dus zou ik bij een hoop dingen elke keer weer die teller handmatig 1 omhoog moeten doen.En dat heeft niet echt zin .. Dus vandaar dat ik dit gebruik want ik weet gewoon dit moet kunnen werken. :'(

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:04
code:
1
SELECT COUNT

https://fgheysels.github.io/


Verwijderd

Topicstarter
Dat heb ik geprobeerd en dan is de teller bij de eerste telling al 0 :'(

  • akakiwi
  • Registratie: September 2000
  • Laatst online: 20-03 11:13

akakiwi

I believe in the ruling class.

rcs = rstcount.AbsolutePosition
neerpennen onder die movelast.
Maaruh, die movelast is niet nodig wanneer je rcs = rstcount.RecordCount doet

| Life is a game (and games are fun) | homepage |


Verwijderd

Topicstarter
keej thnx ik zal het proberen...

  • Boss
  • Registratie: September 1999
  • Laatst online: 01-09 09:20

Boss

+1 Overgewaardeerd

sjeez, wat een moeite! Waarom gebruik je niet gewoon DCOUNT()? Gaat een stuk sneller, denk ik! En misschien eerst het laatste record even opslaan ofsow?

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


Verwijderd

Topicstarter
ook deze werken niet .. die van absoluteposition heeft hetzelfde dat ook de 2e keer dat ik tel telt hij het nieuwe record er niet bij ...

Verwijderd

SELECT COUNT(*) FROM blabla WHERE condition = blabla

is toch een stuk handiger dan wat je nu doet, maar whoami gaf je optie al aan. :)

Verwijderd

is het nieuwe record wel gecommit?

Verwijderd

Topicstarter
heb het antwoord al gevonden... het had te maken met Form Refresh en Form Repaint due moesten er allebei in .. en nu doet hij het wel goed

maar wat bedoel je met gecommit TheMask ?????
Pagina: 1