Effettuare un replace in un campo testo di una tabella

di il
2 risposte

Effettuare un replace in un campo testo di una tabella

Salve a tutti. Vengo dal VBA Excel e mi cimento per la prima volta su Access (2010).
Semplificando, ho una tabella con un campo nel quale vorrei effettuare modifiche di testo (naturalmente su ogni record, sperando di non trovarne du "strani" che blocchino il Replace (sostutizioni di alcune lettere).
Il mio problema è che non so DOVE e COME inserire il codice. Ho provato qsa del genere (nell'esempio, sostituire ogni X con una Y per tutti i records):

IN UN MODULO:

Private Sub Bottone_Click()

Dim StrSQL As String

Dim RecTab As DAO.Recordset
Dim DB As Database

Set DB = CurrentDb

SQL = "SELECT (Campo_Originale) FROM MiaTabella"

Set RecTab = DB.OpenRecordset(StrSQL)

For i = 0 To RecTab.Fields.Count - 1

if not (isnull(rs.fields(i).value) then

Else

StrSQL = Replace(StrSQL, "X", "Y")

End If

Chiedo scusa e ringrazio chi potrà aiutarmi

2 Risposte

  • Re: Effettuare un replace in un campo testo di una tabella

    Quello che hai valutato, ancorché completamente errato, non può essere in un modulo essendo da evento di controllo quindi in una Form, confligge con quello che hai posto come dato inizialmente...
    Parlavi di UN SOLO CAMPO in cui fare il replace... ma il codice li cicla tutti...
    Cosa devi fare...?

    Se fosse solo 1 campo non serve ciclare i records... basta una semplice query Update sul campo in cui applicare il replace.
  • Re: Effettuare un replace in un campo testo di una tabella

    Grazie Alex. Il tuo intervento mi ha illuminato: trascuravo le potenzialità delle query e relativo linguaggio SQL.
Devi accedere o registrarti per scrivere nel forum
2 risposte