(risolto) Problema contatore in vba

di il
7 risposte

(risolto) Problema contatore in vba

Buongiorno,

ho una tabella dove cerco di far avanzare un contatore, il problema e' che rileva sempre il campo EDUCATRICE a 0 (anche se e' diverso)

chi mi potrebbe aiutare?

Dim db As DAO.Database 
Dim rs As DAO.Recordset 
Dim sqlstring As String 

Set dbLocal = CurrentDb 
sqlstring = "SELECT EDUCATRICE,ANNO,CONTATORE FROM RETTA_TRAVASO_TESTATA_aghe" 

Set rs = CurrentDb.OpenRecordset(sqlstring, dbOpenDynaset) 


Dim CONTA0 As Integer 
Dim CONTA1 As Integer 
Dim CONTA2 As Integer 
CONTA0 = 1 
CONTA1 = 1 
CONTA2 = 1 

Do Until rs.EOF 

Select Case (EDUCATRICE) 
Case 0 

    rs.Edit 
    
    rs.Fields("CONTATORE") = CONTA0 
    rs.Update 
    CONTA0 = CONTA0 + 1 
  



Case 1 
    rs.Edit 
    
    rs.Fields("CONTATORE") = CONTA1 
    rs.Update 
    CONTA1 = CONTA1 + 1 


Case 2 


    rs.Edit 
    
    rs.Fields("CONTATORE") = CONTA2 
    rs.Update 
    CONTA2 = CONTA2 + 1 

End Select 
rs.MoveNext


Loop

rs.Close

7 Risposte

  • Re: (risolto) Problema contatore in vba

    Non ho capito nulla
  • Re: (risolto) Problema contatore in vba

    Ciao,
    grazie per la risposta,
    sono veramente novizio di vba
    vorrei crearmi un contatore parziale riga per riga
    nella tabella ho una sfilza di campi EDUCATRICE, popolati con 0,1 oppure 2
    vorrei creare un contatore parziale, cioe'
    EDUCATRICE CONTATORE
    0 1
    0 2
    0 3
    0 4
    1 1
    1 2
    0 5
    1 3
    2 1
    0 6

    il campo EDUCATORE e' intero

    con quel SELECT CASE che ho postato entra sempre e comunque nel CASE 0 anche se il campo di riferimento EDUCATRICE ha 1 oppure 2, il risultato e' questo

    EDUCATRICE CONTATORE
    0 1
    0 2
    0 3
    0 4
    1 5
    1 6
    0 7
    1 8
    2 9
    0 10
  • Re: (risolto) Problema contatore in vba

    Continuo a capirci poco. Posso dedurre che stai facendo un conteggio aggregato secondo il campo Educatrice.

    Se è così tutto quel codice non ti serve a nulla e non devi usare un campo CONTATORE nel DB, semplicemente esegui la query

    "SELECT EDUCATRICE, Count(*) AS CONTATORE FROM RETTA_TRAVASO_TESTATA_aghe GROUP BY EDUCATRICE"

    e otterrai 3 record con i risultati.
  • Re: (risolto) Problema contatore in vba

    Ciao, grazie per la risposta,
    con il count ottengo un totale finale per raggruppamento, vorrei pero' un contatore parziale riga per riga, esempio:

    trova 0 sulla prima riga contatore 1
    trova 0 sulla seconda riga contatore 2
    trova 0 sulla terza riga contatore 3
    trova 0 sulla quarta riga contatore 4
    trova 1 sulla quinta riga contatore 1
    trova 1 sulla sesta riga contatore 2
    trova 0 sulla settima riga contatore 5
  • Re: (risolto) Problema contatore in vba

    Perché non lo aggiungi all'atto dell'inserimento del nuovo record?
  • Re: (risolto) Problema contatore in vba

    EDUCATRICE ti vene sempre calcolato 0 perché devi sostituirlo con rs.fields("EDUCATRICE")...
  • Re: (risolto) Problema contatore in vba

    Grazie oregon, implementero' sicuramente nell'inserimento, ma devo studiare ancora molto

    grazie angelo, con il tuo aiuto ho risolto, grazie di cuore a tutti
Devi accedere o registrarti per scrivere nel forum
7 risposte