[MS Access] Sostituire un carattere in tutta la tabella

Palicare

Nuovo Utente
6 Dic 2019
1
0
1
Ciao, ho questo problema che non riesco a risolvere:
Come faccio a sostituire un carattere con un'altro all'interno di tutta una tabella?
Devo farlo con delle righe di comando e non con il pulsante cerca e trova ovviamente.
Premetto che la tabella ha circa 90 campi e migliaia di valori.
 

ges

Nuovo Utente
17 Ago 2018
6
0
1
Ciao,
prova a usare questo codice
Codice:
Dim OldTxt As String
Dim NewTxt As String
Dim mySQL As String

OldTxt = "pippo"
NewTxt = "paperino"
    
mySQL = "UPDATE NomeTabella SET NomeTabella.NomeCampo ='" & NewTxt & "' WHERE NomeTabella.NomeCampo ='" & OldTxt & "';"

DoCmd.RunSQL mySQL
 

ges

Nuovo Utente
17 Ago 2018
6
0
1
all'interno di tutta una tabella
Leggendo meglio vedo che la richiesta riguarda tutti i campi della tabella.
Allora prova cosi
Devi cambiare solo OldTxt , NewTxt e NOME_TABELLA
Codice:
Option Compare Database

Sub sostituisci_campi_tabella()

    Dim OldTxt As String
    Dim NewTxt As String
    Dim DB As DAO.Database
    Dim Tabella As Object
 
    Set DB = CurrentDb
 
    OldTxt = "PIPPO"
    NewTxt = "PAPERINO"
 
    Set Tabella = DB.OpenRecordset("NOME_TABELLA")
    For i = 0 To Tabella.Fields.Count - 1
    Tabella.MoveFirst
        Do Until Tabella.EOF
         Tabella.Edit
            If Tabella.Fields(Tabella(i).Name) = OldTxt Then
                Tabella.Fields(Tabella(i).Name) = NewTxt
                Tabella.Update
            End If
            Tabella.MoveNext
        Loop
    Next
 
    Tabella.Close
 
    Close

    Set DB = Nothing
    Set Tabella = Nothing


    MsgBox "Fatto!", vbInformation, "NOTIFICA"
End Sub
 

picentia

Nuovo Utente
28 Mag 2021
5
0
1
ciao, scusatemi se riprendo un post vecchio, ma ho un problema similare a quello risolto da Ges.
Nella stessa tabella devo, ogni volta che faccio l'importazione di dati da altra tabella, modificare il contenuto di un campo. Poniamo il caso che in ingresso ho PIPPO, PLUTO, TOPOLINO e MINNIE, devo cambiarli rispettivamente con PAPERINO, QUI, QUO e QUA.
Se associo il codice postato ad un pulsante, per fare tutte le operazioni di sostituzione necessarie devo ripetere OldTxt e NewTxt più volte?
 

picentia

Nuovo Utente
28 Mag 2021
5
0
1
provato, ma non funziona, c'è qualche cosa che sbaglio.
Ecco il codice che ho utilizzato, modificando quello postato prima:


Dim OldTxt As String
Dim NewTxt As String
Dim DB As DAO.Database
Dim Tabella As Object

Set DB = CurrentDb

If OldTxt = "b4_Studio_informatizzazione_dati_manutenzione_programmata" Then
NewTxt = "5.2.4 Studio e informatizzazione dei dati per la manutenzione programmata"

ElseIf OldTxt = "b2_Elaborazione_report_schede_relazioni_tecniche_programmi_manutenzione" Then
NewTxt = "5.2.2 Elaborazione di report, schede, relazioni tecniche e programmi di manutenzione"

ElseIf OldTxt = "b3_Supporto_progettazione" Then
NewTxt = "5.2.3 Supporto alla progettazione, controllo e documentazione degli interventi di manutenzione programmata"

ElseIf OldTxt = "B1_Attività_ispettive_individuazione_criticità" Then
NewTxt = "5.2.1Attività ispettive e individuazione delle criticità"
End If


Set Tabella = DB.OpenRecordset("attività_monitoraggio_pompei")
For i = 0 To Tabella.Fields.Count - 1
Tabella.MoveFirst
Do Until Tabella.EOF
Tabella.Edit
If Tabella.Fields(Tabella(i).Name) = OldTxt Then
Tabella.Fields(Tabella(i).Name) = NewTxt
End If

Tabella.MoveNext
Loop
Next

Tabella.Close
Close

Set DB = Nothing
Set Tabella = Nothing

MsgBox "Fatto!", vbInformation, "NOTIFICA"

End Sub
 

CarlettoFed

Utente Attivo
17 Lug 2017
101
1
18
70
Quel codice precedente è per poter modificare lo stesso dato in più campi mentre tu eventualmente devi modificare più contenuti ma in un solo campo, quale è il suo Nome ?
 

picentia

Nuovo Utente
28 Mag 2021
5
0
1
ciao, sono Marco. La mia necessità è cambiare il contenuto di un solo campo della tabella; nel mio caso specifico quel campo può contenere solo ed esclusivamente quattro diversi contenuti (quelli che ho elencato come oldtxt) che vanno sostituiti sempre con i quattro nuovi (newtxt). La tabella che importo ha sempre gli old e ad ogni nuova importazione devo cambiare con i new.
Come posso fare?
 

CarlettoFed

Utente Attivo
17 Lug 2017
101
1
18
70
Questo è il codice:
Codice:
Dim arrDatiRicerca()
Dim arrDatiSostituzione()
Dim bytCiclo As Byte
    arrDatiRicerca = Array("b4_Studio_informatizzazione_dati_manutenzione_programmata", "b2_Elaborazione_report_schede_relazioni_tecniche_programmi_manutenzione", "b3_Supporto_progettazione", "B1_Attività_ispettive_individuazione_criticità")
    arrDatiSostituzione = Array("5.2.4_Studio_informatizzazione_dati_manutenzione_programmata", "5.2.2_Elaborazione_report_schede_relazioni_tecniche_programmi_manutenzione", "5.2.3_Supporto_progettazione", "5.2.1_Attività_ispettive_individuazione_criticità")
    For bytCiclo = 0 To UBound(arrDatiRicerca())
        CurrentDb.Execute "UPDATE NomeTuaTabella SET [tipologia attività] = Replace([tipologia attività],""" & arrDatiRicerca(bytCiclo) & """,""" & arrDatiSostituzione(bytCiclo) & """)"
    Next
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
F access ricerca record con apostrofo. MS Access 0
P Access: recuperare Indice dopo un insert into MS Access 0
N Access: Filtro su maschera MS Access 0
B Non riesco a trovare i cognomi con i caratteri speciali in Access (Microsoft 365) MS Access 0
N Errore interno Access MS Access 2
C ACCESS Aprire maschera se valore non presente in una combo MS Access 7
L Access Periodo maschera continua MS Access 4
B Aumento dimensioni grafico Access Database 0
R [C#] Quali dipendenze occorrono su progetto "Setup" con Access Database? .NET Framework 1
G Appicazione HTML per inserimento dai in Database Access Microsoft HTML e CSS 0
K mc Access/phpmyamin MS Access 0
L Collegare un form html ad un database access Javascript 2
R salve a tutti sono un insegnante di pianoforte e a tempo perso mi sto dedicando ad access Presentati al Forum 1
G Access point con rete guest, consigli? Reti LAN e Wireless 0
P Access Inserimento data. MS Access 4
ges Microsoft ACCESS oltre ogni limite (tre manuali) Altri Annunci 2
@ [MS Access] Funzione Iif..is null... Database 0
B tasti rapidi Access MS Access 1
M [MS Access] Pulsante su maschera che esegue azioni su altra maschera MS Access 3
C [MS Access] Pagina di dialogo con allegati MS Access 1
F Modificare report di etichette di access con vba MS Access 0
strambotto [MS Access] Smembramento tabella MS Access 5
D [MS Access] Piu' maschere con una sola tabella dati... MS Access 0
G [MS Access] Funzione ARROTONDA non definita nell'espressione MS Access 1
Spenalzo Creare tabelle multiple con Access via VBA MS Access 2
M [MS Access] Relazione tra maschere MS Access 1
G Access Point POE da esterno Reti LAN e Wireless 0
M [MS Access] controllo valido se MS Access 8
N [MS Access] Come relazionare DB Libri trasposti in Film e viceversa MS Access 1
S [ASP] SALVARE VALORE SELECT OPTION SU CAMPO TABELLA ACCESS Classic ASP 9
D [MS Access] MS Access 2
S [MS Access] Apertura Maschera su nuov record in base a determinato ID MS Access 0
maria_ia Microsoft Access Windows e Software 0
S [MS Access] Apertura maschera MS Access 3
S [MS Access] trasformare un numero in lettere in un report MS Access 1
D [Visual Basic] [MS Access] query con parametro di testo Visual Basic 4
T mysql tutorial per importare tabelle access in mysql aiuto MySQL 2
P [MS ACCESS] Estrarre più somme da una query MS Access 4
D [MS Access] problemi con inserimento campo in una maschera MS Access 6
F [MS Access] Creare [stringa] da caselle combinate MS Access 0
D [MS Access] aiuto non riesco a capire MS Access 6
Arcadia [MS Access] Focus su campo specifico MS Access 1
akira [MS Access] Apertura recordset MS Access 1
V access 2007, maschera con caselle di selezione Programmazione 4
W [MS Access] Barre di scorrimento su maschere MS Access 0
A [MS Access] Pulsante per inserire allegati in campo maschera MS Access 0
J [MS Access] Filtro su combo in sottomaschera MS Access 11
Arcadia [MS Access] Implementazione progetto con nuove funzioni. MS Access 0
A [MS Access] Aprire maschera con sottomaschera su ultimo record MS Access 0
A [MS Access] Maschera per interagire con tabella excell MS Access 19

Discussioni simili