Avatar billede jangravgaard Nybegynder
08. januar 2003 - 09:55 Der er 8 kommentarer og
1 løsning

database adgang via script(vb) i excel

Hej

Jeg ville høre hvordan man connecter til en ms sql database via sin vb, som skrives i visual basic editor i excel.

Gerne et script eksempel
Avatar billede Slettet bruger
08. januar 2003 - 10:38 #1
Hvis du kan connecte til din database udenom VBA, kan du prøve at optage en makro hvor du udfører de handlinger der er nødvendige for at oprette forbindelsen. Du kan derefter kigge på koden i VBA editoren.
Avatar billede bak Forsker
08. januar 2003 - 12:19 #2
Her er et eksempel. Desværre kan jeg ikke selv teste det:

'This example needs a ODBC DSN named Publishers which points to your SQL Server.
Public Function TestQuery()

  Dim rst As ADODB.Recordset
  Dim con As ADODB.Connection
  Dim com As ADODB.Command

  'Open connection
  Set con = New ADODB.Connection
  con.ConnectionString = "DSN=publishers;USER=sa;PWD=;DATABASE=pubs"
  con.Provider = "msdasql"
  con.Open

  'Create and manipulate command object
  Set com = New ADODB.Command
  com.ActiveConnection = con
  com.CommandText = "SELECT * FROM Sales WHERE qty < 10"

  'Create and populate the recordset
  Set rst = New ADODB.Recordset
  rst.Open com, , adOpenKeyset

  'Walk the recordset
  With rst
    .MoveFirst
    Do While Not .EOF
          Debug.Print !Payterms
          .MoveNext
    Loop
  End With
  'Clean up
  con.Close
  Set rst = Nothing
End Function
Avatar billede bak Forsker
08. januar 2003 - 12:23 #3
ps. husk at lave en reference til Microsoft AciveX Data object xx library
Avatar billede jangravgaard Nybegynder
08. januar 2003 - 13:10 #4
hmm, hvis jeg prøver at kompilere bak's funktion TestQuery
får jeg at vide: User defined type not defined.
Jeg forsøger at benytte den i excels visual basic editor. Er det derfor ??
Avatar billede Slettet bruger
08. januar 2003 - 13:26 #5
Har du lavet en reference som bak skrev ?
Avatar billede jangravgaard Nybegynder
08. januar 2003 - 13:33 #6
hvordan laver man den ?
Avatar billede bak Forsker
08. januar 2003 - 13:35 #7
i makro-editoren under TOOLS / References. Sæt flueben ved det jeg skrev
Avatar billede jangravgaard Nybegynder
08. januar 2003 - 13:47 #8
okay, så fik jeg den lavet, men jeg får stadig fejl. Det kan nok skyldes denne linje :

con.Provider = "msdasql"

fra funktionen TestQuery

Denne linje er lavet af makroen

ODBC;DSN=TransFleet;UID=sa;PWD=;APP=Microsoft® Query;WSID=SCPDKJAGR;DATABASE=TransFleet;Network=DBMSSOCN;Address=KEN,1433

Spørgsmålet er hvad jeg evt så skal skrive, hvis det "con.Provider" linjen som fejler ?
Avatar billede jangravgaard Nybegynder
24. september 2003 - 15:59 #9
svar
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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