Newsgroup: it.comp.appl.access
Titolo: Caricamento recordset in una matrice

Salve,
Sto cercando di caricare un recordset in un vettore, per poi usare il
vettore stesso come fonte per una query con parametri
La tabella da caricare (tCDC) è un elenco di centri di costo, in pratica
riesco a caricare solo il primo record (cioè rs(0)= 3100) e poi si blocca
dicendomi che
"item not found in this collection, run time error 3265". Quello che non
riesce a trovare è rs(i)
Cosa posso fare?
Questo è il codice..
Grazie.
Max
Dim RsSql As String
Dim CurrentValue As Variant
Dim CurrentField As Variant
Set DB = DBEngine.Workspaces(0).Databases(0)
      RsSql = "SELECT tCDC.cdc FROM tCDC;"
      Set Rs = DB.OpenRecordset(RsSql, DB_OPEN_DYNASET)
      Rs.MoveLast
      numRec = Rs.RecordCount
      Rs.MoveFirst
          For i = 0 To numRec
              CurrentField = Rs(i)
          Rs.MoveNext
          Next i

           Next i
Non ho provato (e non ho neanche capito perché lo vuoi fare visto che nella
tua query ci puoi sbattere direttamente la tabella), però a naso mi dice che
dovrebbe essere
           For i = 0 To numRec
                ' leggi sempre lo stesso campo
                ' perché lo incrementi?
               CurrentField = Rs(0)
               Rs.MoveNext
           Next i
Ciao
--
Silvio
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access

 wrote in message
8vejrp$8pt$1...@fe1.cs.interbusiness.it...

Lo scopo che vorrei raggiungere è questo. Da una tabella contenente tutti i
dati contabili, tra cui i centri di costo, vorrei lanciare una serie di
query, una per centro di costo. Una volta creato il recordset lo esporto su
un foglio excel e lancio una macro per formattarlo. Dopodichè riprendo il
ciclo con il successivo centro di costo. Perciò nel codice che ho pubblicato
ho calcolato il numero di centri di costo disponibili, dopodichè ho
dichiarato (o perlomeno pensavo di averlo fatto) la matrice sapendo già da
subito quanti dati doveva contenere, e quindi il numero di iterazioni.
Infine, ammesso che sia possibile, vorrei passare ciclicamente il dato della
matrice in un'espressione del tipo RsSql = "SELECT * FROM [tCDCex] ecc. e
ottenere quello che serve.
Non so se sia corretto, ma è l'unica cosa che mi è venuta in mente. Al
momento riesco solo ad esportare un centro di costo alla volta.
Grazie.
Ciao

 ottenere quello che serve.
Ancora non capisco la necessità di esportare i dati in Excel, non puoi fare
le stesse cose da Access?
E se no, perché?
Invece di una matrice, perché non un'altra query che ti seleziona i centri
di costo?
Ho come l'impressione che mi manchino dei dati x valutare cosa vuoi
ottenere.
Me lo spieghi meglio?
Grazie.


 ottenere
Lo scopo è quello di esportare in un colpo solo in altrettanti fogli di una
stessa cartella excel tutti i centri di costo (cioè foglio1 centro di costo
3100, foglio2 centro di costo 3200 ecc.). Già sono riuscito ad esportare e
formattare un centro di costo alla volta, mi manca la realizzazione del
"ciclo". La fonte dei dati è costituita da una query (che comprende il
centro di costo) e una tabella Centri di Costo che comprende tutti i centri
potenzialmente utilizzabili.
Grazie.
Massimo

 loro tutto quello che serve.... Forse Access li spaventa. Boh!
E allora tu convinci il cliente che è uno scrauso e che per stare al passo
dei tempi si fa tutto in access. E orgnaizzi una bell'audit per specificare
i requisiti delle sue interrogazioni e calcoli e cazzi e mazzi e gli prepari
delle belle interfacce guidate per lanciare 'sti calcoli.
E ti puppi altri soldi per altro lavoro...
bah...Che parlo a fa?!?
Antonio