08. marts 2005 - 15:45Der er
5 kommentarer og 1 løsning
forkert data type ved læsning fra excel
Hej
Jeg har simuleret en tabel ud fra et excel ark, ved at navngive et antal kolonner. Når jeg forsøger at læse en af kolonnerne ind i et recordset, melder den fejl ved forkert data type. jeg har formateret alle kolonnerne til tekst og alle mine variabler er string værdier. Eneste forskel er at den kolonne der meldes fejl på (antal) er 1-2 karaktere, mens de andre er op til 10. Hvis jeg fjerner antal fra min forspørgelse fungere det fint med de andre kriterier.
Set rs = dbtmp.OpenRecordset("select * from `ubtabel` WHERE ubtabel.ub = '" & ub & "' AND ubtabel.partnummer = '" & material & "' AND ubtabel.antal = ' " & antal & " ';")
tror du har et par ' for meget. Excels uotoformatering kan være lidt vanskelig.
Set rs = dbtmp.OpenRecordset("select * from `ubtabel` WHERE ubtabel.ub = '" & ub & "' AND ubtabel.partnummer = '" & material & "' AND ubtabel.antal = " & antal & " ;")
Såvidt jeg kan se er der en fejl i den sidste del af sætningen, hvor der står = ' " & antal & " ';" Hvis antal f. eks. er 7 vil det blive til: = ' 7 '; dvs. du har et Space for meget før og efter værdien af variablen antal. Skal være: = '" & antal & "';" Således har du også gjort det for variablerne ub og material
bak >> det hjalp ved at fjerne ' omkring antal, så smid et svar så takker jeg med lidt point. Jeg kan dog stadig ikke se logikken i det da mine andre variabler (ub og material) er af samme type, så hvis du har en logisk forklaring så vil jeg meget gerne høre den.
Excel har det med at betragte tal som værdier og ikke som tekst, selvom kolonnen efterfølgende er formateret som tekst. Hvis cellerne er formateret som tekst inden data skrives ind, ser det ikke ud til at være et problem. Da antal så betragtes som en værdi skal ' ' fjernes. ellers virker det ikke.
Synes godt om
Ny brugerNybegynder
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.