Avatar billede henrik13 Nybegynder
10. maj 2002 - 08:46 Der er 12 kommentarer og
1 løsning

Tabel Standardværdi +1

Jeg har en tabel, hvor jeg vil havde bortløbende numre, i nøglefelted. Det gøres i Standardværdi med +1, men hvordan.
Vh Henrik
Avatar billede hotcut Nybegynder
10. maj 2002 - 09:06 #1
?
Bare lav feltet som et autonumererings-felt, som stiger med 1 og starter med 0...
Avatar billede henrik13 Nybegynder
10. maj 2002 - 09:18 #2
>hotcut, tak for svaret, men kan desværre ikke bruges.
Så får jeg huller i min numrerering. Det er de huller jeg vil af med, derfor er id sat til TAL.
Vh Henrik
Avatar billede hotcut Nybegynder
10. maj 2002 - 09:19 #3
du mener at du får huller, når en post bliver slettet?

hmm...

Den er straks værre.

Regner du med at der bliver slettet poster ind imellem?
Avatar billede henrik13 Nybegynder
10. maj 2002 - 09:26 #4
>hotcut, Nej access finder på at hoppe over en gang imellem, det er klart der vil opstå huller ved sletning.
Vh Henrik
Avatar billede hotcut Nybegynder
10. maj 2002 - 09:28 #5
gør access det? Har jeg aldrig oplevet...

Anyway.
Skal det laves direkte i databasen, eller kan det godt gøres fra web-siden? Hvis det kan, hvad programmerer du så i?
10. maj 2002 - 09:29 #6
du er nødt til at styre numertildelingen selv vha VBA, da der altid vil komme huller ved sletning eller afbrudte oprettelser.

koden kan lægges på en formulars BeforeUpdate-hændelse og f.eks. se sådan ud:
Private Sub Form_BeforeUpdate(Cancel as Integer)
  On Error resume next
  Me!ID = DMax("ID", "DInTabel")
  Me!ID = Me!ID + 1
end sub
Avatar billede hotcut Nybegynder
10. maj 2002 - 09:30 #7
det her kan du ellers prøve... er ikke sikker på om access understøtter det.

Der er vist et felt, i din tal-værdi der hedder "formular".

Lad os sige at dit felt hedder "talfelt".

I det felt, skal du i formularen prøve at skrive:

(SELECT max(talfelt) FROM mintabel)+1


Prøv at se om det virker
Avatar billede henrik13 Nybegynder
10. maj 2002 - 09:48 #8
>hotcut, jeg har kun access, ingen hjemmeside.

>thomasjepsen, det er en fortløbene formular jeg har, men jeg vil lave en indskrivningsformular, og se om jeg kan få dit til at virke.

Tak for svar.
Vh Henrik
10. maj 2002 - 11:37 #9
husk at rette datatypen fra Autonummer til langt heltal...!
Avatar billede henrik13 Nybegynder
10. maj 2002 - 12:56 #10
>hotcut, jeg kan ikke få dit til at virke. Jeg indtaster det ved Før Opdatering.

>thomasjepsen, min indskrivningsformular, kom ikke til at køre. Fejl, der skal en opdatering til, den vil ikke gemme posten.

Tak for svar.
Vh Henrik
10. maj 2002 - 13:22 #11
prøv at lægge koden på AfterUpdate i stedet!
Avatar billede jubas Nybegynder
12. maj 2002 - 03:04 #12
En måde at lave det på er at laven forespørgsel hvor dit ID felt bliver indsat og feltet ved side af  skriver = [ID] +1og der vil komme til at så Udtryk 1= [ID]+1
Nu laver du en formular baseret på din forespørgsel , I den ligge du  en makro ved åbning  der skal lyde  på (GåTilKontrolelement  der skiver du udtryk1 og derefter GåTilPost der sætter du den til sidst) nu skal du bare sætte den ind i din indskrivningsformular, som en underformular  Egenskaberne  for underformularen  i din indskrivningsformular skal der ikke være nogen underordnede felter  overordne felter  der forbinder dem ad .
Nu mangler du bare at lave en makro der få dit ID felt at blive en større hver gang du åbner din formular .mokro skal ligge på feltet ID  ved indgang . I makroen skal bare AngivVærdi brug udtryksgenerator  Element  skal værdien af ID stå . I Udtryk skal værdien af felt fra underformularen stå .
Avatar billede henrik13 Nybegynder
02. juni 2002 - 16:51 #13
Lukker
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
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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