Modifica di un campo in tutti i record di una tabella

di il
4 risposte

Modifica di un campo in tutti i record di una tabella

Ciao a tutti,
mi sto imbattendo in un problema al quanto stupido credo.

Ho due campi, CStreet e CN e vorrei concatenarli in questo modo "Street, CN"

ho scritto 2 righe in vba
 Set tabellatest = CurrentDb.OpenRecordset("SELECT * FROM Tabella1 ")
                       tabellatest.MoveFirst
                        Do While Not tabellatest.EOF
                        tabellatest.Edit
                        tabellatest.Fields("CStreet") = tabellatest.Fields("CStreet") & ", " & tabellatest.Fields("CN")
                        tabellatest.Update
                        tabellatest.MoveNext
                        Loop
                        Set tabellatest = Nothing
Ma ricevo l'errore di runtime 438

Se modifico questa riga in questo modo
tabellatest.Fields("CStreet") = tabellatest.Fields("CStreet") & tabellatest.Fields("CN")
non ho piu l'errore ma chiaramente non é il risultato di cui avevo bisogno.

Dove sbaglio?

Grazie!

4 Risposte

  • Re: Modifica di un campo in tutti i record di una tabella

    Dovresti fare DEBUG e scrivere i valori in una Variabile e fare un Print in Finestra immediata.
    Tuttavia quello che hai fatto non serve a nulla, ovvero è sbagliato ancorchè possa funzionare in quanto non ha alcun senso scorrere tutti i RECORDS quando con una ACTION QUERY si ottiene il medesimo risultato in probabilmente 1/1000 del tempo.
    
    Dim sSQL As String
    sSQL="UPDATE Tabella1 SET Tabella1.CStreet= Tabella1.CStreet & ', ' & Tabella1.CN
    DbEngine(0)(0).Execute sSQL, dbFailOnerror
  • Re: Modifica di un campo in tutti i record di una tabella

    Be effettivamente il tuo codice sembra piu snello e fa il suo dovere

    Grazie!
  • Re: Modifica di un campo in tutti i record di una tabella

    fabionik2004 ha scritto:


    Be effettivamente il tuo codice sembra piu snello e fa il suo dovere

    Grazie!
    Davvero...? Allora per puro caso ci ho preso, pensavo di aver detto la prima cosa che mi era venuta in mente...
  • Re: Modifica di un campo in tutti i record di una tabella

    @Alex ha scritto:


    Davvero...? Allora per puro caso ci ho preso, pensavo di aver detto la prima cosa che mi era venuta in mente...
Devi accedere o registrarti per scrivere nel forum
4 risposte