XL 2010 Macro VBA Excel (Doublon,SansAccents,Maj,Min,Nompropre,Espaces superflus)

Virginie17d

XLDnaute Occasionnel
1588208871672.png
 

Pièces jointes

  • MACROS VBA PERSONNEL.xlsm
    60.1 KB · Affichages: 264

patricktoulon

XLDnaute Barbatruc
donc sur la base de ça
123455667
123455667
01 23 45 56 67
01.23.45.56.67
1 23 45 56 67
1.23.45.56.67
33123455667
0033 1 23 45 56 67
0033.1.23.45.56.67
623455667
623455667
06 23 45 56 67
06.23.45.56.67
6 23 45 56 67
6.23.45.56.67
3,36E+10
0033 6 23 45 56 67
0033.6.23.45.56.67
723455667
723455667
07 23 45 56 67
07.23.45.56.67
7 23 45 56 67
7.23.45.56.67
3,37E+10
0033 7 23 45 56 67
0033.7.23.45.56.67


je fait ça
VB:
Sub test()
    For Each cel In Range("A1:A27").Cells
        x = CStr(cel): x = Replace(Replace(Replace(Replace(Replace(x, " ", ""), ".", ""), "-", ""), ",", ""), "+", "")
        If Len(x) >= 9 Then
            x = Right(x, 9)
            If Left(x, 2) = "33" Then x = Mid(x, 3)
            cel.Offset(, 1) = x & " bizarre"
            Select Case Left(Val(x), 1)

            Case 6, 7: cel.Offset(, 1) = "0033-" & x
            Case 1, 2, 4, 5, 8: cel.Offset(, 1) = Format(Val(x), """0033-""@-@@@@@@@")

            End Select
        End If
    Next
End Sub
 

Virginie17d

XLDnaute Occasionnel
Sub test() For Each cel In Range("A1:A27").Cells x = CStr(cel): x = Replace(Replace(Replace(Replace(Replace(x, " ", ""), ".", ""), "-", ""), ",", ""), "+", "") If Len(x) >= 9 Then x = Right(x, 9) If Left(x, 2) = "33" Then x = Mid(x, 3) cel.Offset(, 1) = x & " bizarre" Select Case Left(Val(x), 1) Case 6, 7: cel.Offset(, 1) = "0033-" & x Case 1, 2, 4, 5, 8: cel.Offset(, 1) = Format(Val(x), """0033-""@-@@@@@@@") End Select End If Next End Sub
Je remplace tout le module par ca?
et j'ai du modifier le commum qui avait ZZZ mais je n'y arrive pas
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re Bonsoir Patrick

C'est pas mal, et donc pour l'international ? Car là il les transforme en FR, c'est un peu dangereux
PhoneResultComment
123456789​
0033-1-23456789
33123456789​
0033-1-23456789
33123456789​
0033-1-23456789
01.23.45.67.890033-1-23456789
01 23 45 67 890033-1-23456789
512345678​
0033-5-12345678
03.45.44.23.45345442345 bizarre
21234556567​
0033-2-34556567
596345667​
0033-5-96345667
00377939393930033-793939393Monaco !!
377939393930033-793939393Monaco !!
623456789​
0033-623456789
33623456789​
0033-623456789
1144273730​
0033-1-44273730
07.23.45.67.890033-723456789
08 23 45 67 890033-8-23456789
612345678​
0033-612345678
07.45.44.23.450033-745442345
21234556567​
0033-2-34556567
696345667​
0033-696345667
377-6666666660033-666666666Monaco !!
613012237​
0033-613012237
00262-2987100033-2-62298710Mayotte !!
622228072​
0033-622228072
06-770128220033-677012822
00331-442736770033-1-44273677

@+Thierry
 

patricktoulon

XLDnaute Barbatruc
non pour être sérieux il va t’être difficile voir impossible de maîtriser toutes les country avec tout les format bizarre que l'on peut imaginer
Thierry t'a fait un truc sympa
par contre ce que tu peut faire dans ton fichier dans le worksheet-change du thisworlbook du xlam mettre les replace il se feront automatiquement Thierry confirmera ou infirmera
 

Virginie17d

XLDnaute Occasionnel
non pour être sérieux il va t’être difficile voir impossible de maîtriser toutes les country avec tout les format bizarre que l'on peut imaginer
Thierry t'a fait un truc sympa
par contre ce que tu peut faire dans ton fichier dans le worksheet-change du thisworlbook du xlam mettre les replace il se feront automatiquement Thierry confirmera ou infirmera
si j'arrive déjà à remplacer " " & "." par "" ca serait déjà pas mal, mais je pense effictivement qu'on doit rester sur l'existant
 

eriiic

XLDnaute Barbatruc
Re,

tu ne peux pas faire ça Patrick :
VB:
        If Len(x) >= 9 Then
            x = Right(x, 9)
            If Left(x, 2) = "33" Then x = Mid(x, 3)
Qu'est-ce qui te dit que tu n'auras pas le 3 34 56 78 90 ?
Le code international (s'il est présent) sont les chiffres précédents les 9 derniers (pour la france)
eric
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Vivi fais attention tu vas rentrer dans le Top 100 WorldWide do,t je parlais !!!!

Je remplace tout le module par ca?
et j'ai du modifier le commum qui avait ZZZ mais je n'y arrive pas

Si tu as fait ça !!! Arf LoL


Patrick, euh oui dans l'absolu pour :

par contre ce que tu peut faire dans ton fichier dans le worksheet-change du thisworlbook du xlam mettre les replace il se feront automatiquement Thierry confirmera ou infirmera
Mais la semaine prochaine, Vici ouvre un classeur sur les Compte en Banques des RIB de ses clients, puis elle change de feuille et PAF ! tous les IBAN ou autre chose ont subi des replaces...

Les XLAM d'accord, avec un Ribbon et des bouton où l'utilsateur est "conscient" de ce qu'il fait, mais Danger quand même sur les Triggers des évènenements WorkSheet, Workbook, etc... (sutout que l'uilisateur risque de ne pas y porter attention et sauvera sont classeur un peu "niaké" !

Donc pas très chaud pour ma part... Donc je confirme, mais je n'adhère pas... sinon ce sont les autres classeurs qui ''infirmeront'' à l'hôpital des XLS ! LoL

@+Thierry
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonsoir @eriiiic

Chacun peu contribuer !!! LoL Patrick à mis une belle pierre à l'édifice...

Voici un passe-temps ci-joint, celui qui n'a plus de FALSE gagne .........
...........
...............
....................Le droit de revenir sur XLD !

Vivi STP confirme qu'on a tous les cas de Figures ! (Monaco c'est pour moi !)

@+Thierry
 

Pièces jointes

  • XLD_Phone_Number_Format.xlsm
    19.8 KB · Affichages: 7

_Thierry

XLDnaute Barbatruc
Repose en paix
Thierry in simple msgbox activer ceci ou cela ou pas
if reponse=vbyes
et on se sert des callback "get" pour enabed les bouton ou pas
à l'ouverture d'un fichier c'est un moindre mal

Si Virginie est d'accord alors, "la cliente est Reine" moi je n'utiliserai pas ce travail pour moi, c'est juste pour me remettre un peu dans le monde VBA, je suis trop niveau boulot dans TSQL et le C/al et maintenant le AL... Ca me distrait ;)

@+Thierry
 

Discussions similaires

Statistiques des forums

Discussions
312 225
Messages
2 086 411
Membres
103 201
dernier inscrit
centrale vet