Bonjour,
Sous Access, j'ai une table "Identification" comportant 6 champs dont le champ "Prenom". Je souhaite supprimer tous les espaces de ce champ
(Marie Thérèse -----> MarieThérèse).
J'ai tout d'abord créé (en VBA) un nouveau champ "PrenomSansEspaces", car je souhaite conserver mon champ d'origine pour le moment.
Soyez compréhensifs si des lignes vous paraissent aberrantes, je fais mes premiers pas en programmation!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 Sub RemplacerEspaces() Dim db As DAO.Database Dim table As DAO.TableDef Dim champ1 As DAO.Field, champ2 As DAO.Field Dim rst1 As DAO.Recordset, rst2 As DAO.Recordset Dim ChaineActuelle As String 'chaîne dans laquelle s'effectue la recherche Dim Resul As String Set db = CurrentDb Set table = db.TableDefs("Identification") Set champ1 = table.Fields("Prenom") Set champ2 = table.Fields("PrenomSansEspaces") Set rst1 = table.OpenRecordset(champ1) Set rst2 = table.OpenRecordset(champ2) rst1.MoveFirst While Not rst1.EOF If RechercherEspaces <> 0 Then Resul = Replace(ChaineActuelle, " ", "") rst2.AddNew(resul) Else: Resul = ChaineActuelle rst2.AddNew(resul) rst1.MoveNext End If Wend 'Message indiquant si la suppression des espaces est réussie MsgBox "Les cellules du champ " & champ1.Name & " ne contiennent plus d'espaces " End Sub
Quand je lance la procédure, il n'y a plus d'erreurs de trouvées, le "MsgBox" s'affiche! Mais ma table est inchangée.
Pour la fonction "RechercherEspaces", j'ai utilisé "InStr"!
Je pense que MES erreurs vont vous sauter aux yeux! (AddNew, recordset!??)
Merci d'avance pour votre aide
Partager