Avatar billede jhack Nybegynder
04. november 2005 - 13:55 Der er 5 kommentarer og
2 løsninger

Problemer med WHERE

Hvorfor virker nedenstående ikke. Når jeg afvikler koden kommer der en fejl der hedder "invalid cloumn name 'Konto'".
Jeg ønsker kun at se de data som er >= det som brugeren taster i
inputboxen. Nedenstående kode er lavet i Excel.

Håber der er nogen der kan hjælpe mig

Sub LavQT()
    Dim sConn As String
    Dim sSql As String
    Dim oQt As QueryTable
    Dim Konto As String
   
 
 
    sConn = "ODBC;DSN=XALODBC;"
    sConn = sConn & "UID=xal_supervisor;;APP=Microsoft Office 2003;WSID=DBI-CITRIX1;DATABASE=xaldb;Network=DBMSSOCN"
   
    Konto = InputBox("Indtast kontonummer", "Accountnumber")
   
    sSql = "SELECT DEBTABLE.ACCOUNTNUMBER, DEBTABLE.NAME, DEBTABLE.ADDRESS3 FROM xaldb.dbo .DEBTABLE DEBTABLE WHERE DebTable.AccountNumber >= Konto ORDER BY DEBTABLE.ACCOUNTNUMBER" _

    Set oQt = ActiveSheet.QueryTables.Add( _
              Connection:=sConn, _
              Destination:=Range("a1"), _
              Sql:=sSql)
    oQt.Refresh

End Sub
Avatar billede arne_v Ekspert
04. november 2005 - 13:58 #1
sSql = "SELECT DEBTABLE.ACCOUNTNUMBER, DEBTABLE.NAME, DEBTABLE.ADDRESS3 FROM xaldb.dbo .DEBTABLE DEBTABLE WHERE DebTable.AccountNumber >= " & Konto & " ORDER BY DEBTABLE.ACCOUNTNUMBER"

vil jeg tro
Avatar billede erikjacobsen Ekspert
04. november 2005 - 13:58 #2
Noget i retning af

    sSql = "SELECT DEBTABLE.ACCOUNTNUMBER, DEBTABLE.NAME, DEBTABLE.ADDRESS3 FROM xaldb.dbo .DEBTABLE DEBTABLE WHERE DebTable.AccountNumber >= " & Konto & " ORDER BY DEBTABLE.ACCOUNTNUMBER"

evt med '...' omkring hvis det er et tekstfelt.
Avatar billede the_party_dog Nybegynder
04. november 2005 - 13:59 #3
Når der står konto i din sql sætning, er det så dit input felt til brugeren?

Det fejlen siger, er at den ikke kender "konto" i det sammenhæng som det står nævnt. Nu står kontot i en SQL sætning, så prøver den på at sige den ikke kender til konto som en kolonne.

I din SQL sætning står der:
WHERE DebTable.AccountNumber >= Konto
Er konto så dit input felt? Hvis ja, skal du bryde din tesktstreng.

sSql = "SELECT DEBTABLE.ACCOUNTNUMBER, DEBTABLE.NAME, DEBTABLE.ADDRESS3 FROM xaldb.dbo .DEBTABLE DEBTABLE WHERE DebTable.AccountNumber >= "+ Konto.Text +" ORDER BY DEBTABLE.ACCOUNTNUMBER" _
Avatar billede jhack Nybegynder
04. november 2005 - 14:17 #4
Det virkede - tak
Avatar billede jhack Nybegynder
04. november 2005 - 14:20 #5
Hvordan tildeler jeg point?
Avatar billede jhack Nybegynder
04. november 2005 - 14:31 #6
tak
Avatar billede arne_v Ekspert
04. november 2005 - 15:15 #7
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
Computerworld tilbyder specialiserede kurser i database-management

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