Avatar billede uc Nybegynder
12. august 2003 - 22:27 Der er 13 kommentarer og
1 løsning

Automatisk accept til en ok knap.?

Hej med jer
Måske lidt underlig overskrift.?

Men jeg har noget kode der læser en text fil og hælder
data ind i en tabel.
Men for hvert LOOP skal man trykke OK for at komme vidre til næste post, det er bare ikke så fedt hvis man har 100 poster i en fil.
Det må simpelthen kunne laves automatisk.?

UC.
12. august 2003 - 22:33 #1
Du kan benytte Sendkeys til at "trykke" på OK-knappen.

Denne sendkeys skal afspilles INDEN msgbox'en kommer, og skal se således ud:

Sendkeys "[ENTER}", false
...
...
...
12. august 2003 - 22:38 #2
Hov...der var vist lige en slåfejl. Det skal se således ud (med lidt ekstra pædagoisk fyld):

Do
  Sendkeys "{ENTER}", false
  ...
  ...
  ...
Loop Until ...?
Avatar billede uc Nybegynder
12. august 2003 - 22:54 #3
Hej thomasjepsen.
der fik du lige 90 points..
det virker sq..GGG
Jeg har sat det ind lige før end Docmd.Execute(strSQl).
Da det må være den der trikker en msgbox.?
Men pyt,... det ser udtil, at virke.

UC:-) Godnat.
12. august 2003 - 22:56 #4
g'nat...og tak for point :o)
12. august 2003 - 23:00 #5
hmmm...Docmd.Execute(strSQL) ??? Det er da ikke en gyldig syntaks!!?
Er strSQL blot en SQL-sætning, som bliver afspillet?
12. august 2003 - 23:05 #6
Hvis dette er tilfældet, så er det mere hensigtsmæssigt at gøre således:

Docmd.SetWarnings False
Docmd.RunSQL strSQL
Docmd.SetWarnings True
Avatar billede uc Nybegynder
12. august 2003 - 23:11 #7
thomas...
Hvorfor skulle det være bedre..?
og det er swlv Docmd.runsql strSQL

uc.
Avatar billede uc Nybegynder
12. august 2003 - 23:15 #8
strSQL er en sql sætning.
så jeg skrev

do...
strSQL = "INSERT ..."
Sendkeys "{ENTER}",false
Docmd.Runsql strSQL

loop

og det virker..
UC.
12. august 2003 - 23:25 #9
Fordi Sendkeys i virkeligheden er en Fy-Fy-kommando, som kun må benyttes som sidste udvej. Det er bedre programmeringsskik at bruge den anden metode, selvom resultatet er det samme. Når du slår advarsler fra med Docmd.Setwarnings False, så afværger du problemet frem for at skulle løse problemet efterfølgende.

Endvidere kan ydre omstændigheder i operativsystemet eller andre kørende programmer, i sjældne tilfælde bevirke at sendkeys ikke virker.

Personligt foretrækker jeg denne metode:
currentproject.Connection.Execute strSQL

Denne metode prompter slet ikke brugeren, hvorfor Sendkeys eller Setwarnings er helt overflødige :o)
Avatar billede uc Nybegynder
13. august 2003 - 09:17 #10
thomasjepsen

currentproject skal defineres på en eller anden måde..?
Har du ikke en stump kode der viser et eks.?

eller har du en url...

UC.
13. august 2003 - 09:18 #11
hvilken version af Access benytter du?
Avatar billede uc Nybegynder
13. august 2003 - 21:29 #12
thomasjepsen
Sorry den lang svar tid..
Jeg har en ver. 2000
UC.
13. august 2003 - 21:43 #13
Ok, så behøver du ikke at definere/erklære currentproject.Connection.
Så er det blot at skrive sætningen....

Har du prøvet?
Avatar billede uc Nybegynder
13. august 2003 - 22:15 #14
Rock n' Roll
det spiller bare...
tak for denne ekstra, point frie , service..GG

UC.
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