Avatar billede jakobscafe Nybegynder
19. maj 2004 - 13:35 Der er 16 kommentarer og
2 løsninger

Fastholde feltværdi fra forrige indtastning

Dav. Jeg er ved at data om billeder i Access.
Hvert billede får et ID (autonum) og jeg indtaster i en formular
Felt1: Billedesti
Felt2: Billedenavn
Felt3: Alt-tekst

Da jeg har mange billeder i samme mappe, er billedesti for næste billede 99% sikkert det samme som for forrige billede.
Derfor kunne jeg tænke mig, at Access _ikke_ blankede feltet billedesti af, når jeg indtaster et nyt billede, men kun billedenavn og alt-tekst.

Er det mon muligt, uden at gøre det for kompliceret?
vh
Avatar billede mugs Novice
19. maj 2004 - 13:38 #1
19. maj 2004 - 13:38 #2
På formularens AfterOpdate-hændelse lægger du denne kode:
Me!Billedesti.defaultvalue = "'" & Me!Billedesti& "'"
Avatar billede mugs Novice
19. maj 2004 - 13:40 #3
Mellemrum Thomas - Mellemrum :o)
19. maj 2004 - 13:42 #4
ja ja, jeg så det godt Mugs :o)

Me!Billedesti.defaultvalue = "'" & Me!Billedesti & "'"
Avatar billede overchord Nybegynder
19. maj 2004 - 13:42 #5
Maa jeg foreslaa at du fremfor at bruge et tekstboks til at finde billedestien laegger en ekstra knap paa din formular som aabner en fil-explorer der dels goer navigationen til filer/mapper nemmere og dels bibeholder den mappe du sidst arbejdede i.
Der ligger et script her:
http://www.mvps.org/access/api/api0001.htm

Som kraever lidt/ingen modifikation for at virke. Herefter kan du ganske simplet kalde functionen GetOpenFile og indsaette denne sti i din tabel.
Avatar billede jakobscafe Nybegynder
19. maj 2004 - 13:57 #6
Der kommer en Automationsfejl - objektet indeholder ikke automationsobjektet Me
Sikkert mig der gør noget forkert
AfterUpdate = EfterOpdatering, right?
Mugs: DAO recordset og sikke meget. Kan Access da ikke bare undlade at blanke felterne af?
19. maj 2004 - 13:59 #7
jakob-> Skriver du min sætning i VBA-editoren? Eller skriver du den i egenskaben?

Din hændelsesprocedure skal se således ud:
 
Private Sub Form_AfterUpdate()
  Me!Billedesti.defaultvalue = "'" & Me!Billedesti & "'"
End Sub
19. maj 2004 - 14:00 #8
...i VBA-Editoren
Avatar billede mugs Novice
19. maj 2004 - 14:00 #9
Me er din aktuelle formular. thomasjepsen's kode refererer således til formularen du står i og feltet Billedsti:

Me!Billedesti.defaultvalue = "'" & Me!Billedesti & "'"

Hvad mener du med "blanke af"?
Avatar billede jakobscafe Nybegynder
19. maj 2004 - 14:05 #10
Øj manner. Det hjalp jo. Jeg brugte en Udtryksgenerator.
Så mangler der bare at Aceess hopper over feltet, når der i forvejen står noget... Men det må komme senere. Tak for hjælpen Thomas
19. maj 2004 - 14:07 #11
Anytime :o)
Avatar billede mugs Novice
19. maj 2004 - 14:13 #12
Hoppe over feltet:

If Not IsNull(Me.Billedesti) Then
Me.Billedesti.Locked = True
Else:
Me.Billedesti.Locked = False
End If
19. maj 2004 - 14:16 #13
hmm, locked stopper ikke markøren fra et stoppe i feltet. Brug måske hellere denne på formularens VedAktuelt:

If Not IsNull(Me.Billedesti) and Me!Billedesti <> "" Then
  Me!Billedesti.tabstop= false
Else:
  Me!Billedesti.tabstop= true
End If
Avatar billede mugs Novice
19. maj 2004 - 14:23 #14
Thomas -> Korrekt. Locked forhindrer kun ændringer i feltet. Beklager.
19. maj 2004 - 14:24 #15
Det skal du skam ikke :o)
Avatar billede jakobscafe Nybegynder
19. maj 2004 - 14:28 #16
Nu bliver det smart. Meget går jo igen i et sådan billedenavn - så nu vil jeg prøve at få billedenavn til at bestå af 3 felter:
Prefix... DSCN5xxx
variable 701 702 703 704
endelse (.jpg)

Altså således jeg skal taste minimum ind pr billede. Arbejder...
Avatar billede mugs Novice
19. maj 2004 - 14:35 #17
I formularens VedAktuel hændelse kan du benytte flg:

If Me.NewRecord = True Then
Me.Prefix = "et eller andet"
Me.variable = ""noget andet2
endelse = "xx"
end if
Avatar billede overchord Nybegynder
19. maj 2004 - 15:57 #18
et alternativ var da forresten ogsaa bare at bruge VBA's chdir funktion....
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