[VBA] probleem met query

Pagina: 1
Acties:

  • Rene59
  • Registratie: April 2000
  • Laatst online: 08-07 20:34
Ik heb een query (ingekort) "SELECT COUNT(Item) AS Items FROM tabel WHERE bla= 'A'" en als ik deze gewoon uitvoer op de database, dan krijg ik een resultaat (bijv. 13).
Nu heb ik deze query (en nog een reeks andere queries in de Array aSQLs) om te testen als volgt in VBA code verwerkt.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
For i = 0 To 29
    Set oRS = New ADODB.Recordset
    With oRS
        .ActiveConnection = CurrentProject.Connection
        .CursorType = adOpenKeyset
        .LockType = adLockPessimistic
        .Source = aSQLs(i)
        .Open
        .Debug.Print oRS("Items")
        .Close
    End With
    Set oRS = Nothing
Next i


Alle queries geven als resultaat 0, terwijl als ik ze handmatig uitvoer ze gewoon resultaat geven.
Zit ik nou ergens enorm overheen te kijken?

  • BertS
  • Registratie: September 2004
  • Laatst online: 13-02 08:33
Misschien ook even je aSQL() posten?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 19-08 12:58

NMe

Quia Ego Sic Dico.

VBA hoort in Officesuites en -software. :)

PW>>OFF

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Rene59
  • Registratie: April 2000
  • Laatst online: 08-07 20:34
Sorry -NMe- :)

bee-es: ik post hier maandag wel weer ff want 't is iets op m'n werk, heb 't nu niet bij de hand.
Maar de array is volgens mij in orde. De queries die erin zitten werken goed, maar blijkbaar niet met deze code.
Zou het ermee te maken kunnen hebben dat de database een DSN is? Dus dat ik anders moet verbinden. Ik heb nu een gelinkte tabel.

  • Rene59
  • Registratie: April 2000
  • Laatst online: 08-07 20:34
Nou, ik heb het probleem gevonden.

Blijkbaar accepteert Access wel SQL als deze "PLANNER_CD LIKE '*0732'" maar zodra ik dit in Access VBA gebruik moet ik geen * maar % gebruiken.

De logica ontgaat me volledig...maar het werkt nu iig.

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Dat heeft niet zoveel te maken met vba maar met het feit dat je bruik maakt van de ADO-dataprovider, en die heeft idd '%' als jokerteken. De native jet engine en ook DAO gebruiken het *.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Rene59
  • Registratie: April 2000
  • Laatst online: 08-07 20:34
Op die fiets. Weer wat geleerd :)
Pagina: 1