Avatar billede svjensen Nybegynder
27. august 2010 - 12:52 Der er 2 kommentarer og
1 løsning

VBA: returnere værdi når skrivning til Access database

Jeg anvender VBA i excel til at skrive data til en Access database.
Et simpelt script er indsat herunder.
Den tabel jeg skriver til har to felter:
uid (autonummerering)
Tekst (text)

Mit spørgsmål er, hvordan jeg kan få min funktion til at returnere den værdi, feltet uid er tildelt.

Script:
Const ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Q:\PL\PLA\ALLE\03 Periodeplan\Sandkasse\Access programmering\TestDB.mdb;Persist Security Info=False"

Function SkrivTilDBViaSQL(Tekst As String) As Boolean
    Dim SQLstr As String
    Dim MyCon As New ADODB.Connection
    Dim test As String

    MyCon.ConnectionString = ConStr
    MyCon.Open

    SQLstr = "INSERT INTO tblTest (Tekst) VALUES ('" & Tekst & "')"
   
    MyCon.Execute SQLstr
   
    SkrivTilDBViaSQL = True
   
    'Oprydning i fht. DB
    MyCon.Close
    Set MyCon = Nothing
End Function
Avatar billede svjensen Nybegynder
27. august 2010 - 13:03 #1
Fandt en delvis løsning ved at benytte:
Access.Application.DLast("[uid]", "tblTest")

Men den returnere den sidste værdi inden jeg skriver til DB...
Avatar billede svjensen Nybegynder
30. august 2010 - 11:00 #2
Tilsyneladende er der hjælp at hente her:
http://databases.aspfaq.com/general/how-do-i-get-the-identity/autonumber-value-for-the-row-i-inserted.html

Men jeg er usikker på, hvordan jeg kan indarbejde det i min VBA kode.
Avatar billede svjensen Nybegynder
27. september 2010 - 16:12 #3
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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