Avatar billede hallo Nybegynder
02. juli 2000 - 10:39 Der er 12 kommentarer

Antal poster i en tabel & søgning

jeg har en database, hvor jeg har hovedmenu, der kunne jeg godt tænke mig at der var et tal for hvor mange poster der ligger i en anden tabel, og så skal det selvfølgelig selv opdatere i takt med jeg retter i tabellen.

Og så til det andet sprøgsmål:
Hvordan laver jeg min egen søgeformular, så jeg slipper for at bruge den der er med access (ctrl + b)

Avatar billede privaten Nybegynder
02. juli 2000 - 18:42 #1
Med hensyn til det første spg.: du kan bruge det member på recordset-objectet der hedder RecordCount
fx:

    Dim db As Database
    Dim rs As Recordset
    Set db = CurrentDb
    Set rs = db.OpenRecordset("test")
    MsgBox "Antal Records i Tabellen:" & rs.RecordCount
Avatar billede hallo Nybegynder
02. juli 2000 - 21:06 #2
Jeg er ikke så knøv til det med databaser, så kan du ikke uddybe det lidt mere, hvordan jeg skal indsætte det
Avatar billede lthrane Nybegynder
03. juli 2000 - 08:38 #3

Vedr. antal poster i en anden tabel:
Jeg vil foreslå at du IKKE har et felt i een tabel, som indeholder antal records i en anden - der vil efter min mening være for stor risiko for at der går ged i vedligeholdelsen af tallet.

De appliaktioner du har som skal anvende databasen, kan ligeså godt hente antallet ved en forespørgsel, så er du helt sikker på at der ikke går ged i det:

  SELECT count(*) FROM AndenTabel

lthrane
Avatar billede privaten Nybegynder
03. juli 2000 - 13:15 #4
Hvis du sender en kopi af basen vil jeg gerne sætte den ind på den formular du ønsker...

(privaten@forum.dk)
Avatar billede philiph Nybegynder
11. juli 2000 - 01:09 #5
Den virkelig simple:

Opret et tekstfelt (txtCount), gå i egenskaber og sæt det til locked & disabled.

I formularens OnOpen event indsætter du følgende kode:
txtCount = DCount("*","tabelnavn")
Avatar billede midgaardsorm Nybegynder
27. juli 2000 - 17:09 #6
Jeg er lige med på en kigger !!

Hvad gør man hvis man gerne vil gøre tællingen afhængig af et andet felt på formen der går igen i tabellen !

Belønnes selvfølgelig med point !
Avatar billede philiph Nybegynder
28. juli 2000 - 01:37 #7
>midgaardsorm

Du kan let udvidde mit eksempel med kriterier.

Hvis det felt der har kriteriet hedder txtKrit så ser koden såtan ud:

Hvis krit er tekstfelt:
txtCount = DCount(\"*\",\"tabelnavn\",\"Krit=\"\"\"& txtKrit & \"\"\"\")

Hvis krit er numerisk felt:
txtCount = DCount(\"*\",\"tabelnavn\",\"Krit=\"& txtKrit)

Thats it!

Avatar billede midgaardsorm Nybegynder
28. juli 2000 - 11:41 #8
Philiph >> Jeg opretter lige et spørgsmål med dette !!
Avatar billede midgaardsorm Nybegynder
28. juli 2000 - 11:51 #9
philiph og andre >> Fortsættes på http://www.eksperten.dk/spm/21825
for pointfordeling.

Hallo >> Undskyld at jeg kanibaliserer på dig !!
Avatar billede hallo Nybegynder
30. juli 2000 - 12:32 #10
Til philiph 

Jeg har prøvet det som du skriver (tror jeg nok)

Jeg er ikke så godt til de mere tekniske ord på engelsk, og jeg har en dansk version af Access

Men det jeg tror jeg skal gøre, er at jeg skal lave et felt, et manget til dem man sjruver i, når man arbejder i selve databasen. Derefter skal jeg ind i det felt der hedder \"Kontrolelementskilde\" (eller sådan noget) Og der indstætter jeg så denne formular, hvor jeg derefter retter \"tabelnavn\" til det tabellen hedder ???
Det har jeg prøvet, men det virker ikke

der står barer i feltet #?navn eller sådan noget
Avatar billede philiph Nybegynder
31. juli 2000 - 02:09 #11
> Hallo

(undskyld ventetiden)

Du har næsten gjort det rigtigt... men ikke helt.
Det jeg mente var at lave et felt UDEN Kontrolelementskilde, og så gå ind på formularen, og vælge egenskaber på formularen (gøres lettest ved at dobbelt-klikke på firkanten der hvor linealerne mødes i øverste venstre hjørne). I denne dialog vælger du Hændelsesprocedurer og finder den hændelse der hedder \"Ved Åbning\", ELLER \"Ved Nuværende\", alt efter om du vil have tælleren opdateret kun ved åbning, eller hver gang du stiller dig på en post. Ud for hændelsen trykker du på knappen med de 3 punktummer (kommer frem når du stiller dig på hændelsen). I den vælger du hændelsesprocedure, og indsætter koden som beskrevet tidligere.

Hvis du ikke kan få det til at virke, må du sende basen til mig (philiph@mobilixnet.dk), for det er meget svært at finde fejlen her on-line.

Forbehold for korrekt oversættelse til danske udtryk. Jeg har kun den engelske udgave af Access.

God fornøjelse.
Avatar billede larsen Nybegynder
19. januar 2001 - 23:42 #12
Du kan skrive følgende :

Tekstboksnavn.text = Format(DCount(\"*\", \"<Tabelnavn>\"))

Det burde virke..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester