Bonjour,

Je suis débutante depuis 2 jours sur VBA Excel (je ne suis pas développeuse pour info).

Voici mon problème,

J'ai un fichier Excel, où je dois corriger 3 Colonnes au niveau de leur Format de données en gros c'est du formatage de données. Une des 3 colonnes me posent problème = N° Téléphone

J'ai les format suivants possibles pour la colonne "n° téléphone" :
- 03.07.09.66.55
- 03-07-09-66-55
- 03,07,09,66,55
- 03;07;09;66;55
- 0307096655FAX
- SAM0307096655

Je voudrais avoir uniquement les 10 chiffres ni plus ni moins. Et si la cellule est vide je dois combler par des 0000000000

Voici le Code :

_____________________________________________
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
Public Sub Formatage()

Dim NbEnregistrement As Integer

Sheets(1).Select
'Compter le Nombre de lignes à importer / [-1] est pour décompter la ligne du libellé des colonnes
NbEnregistrement = Application.CountA(Columns("A:A")) - 1
Range("T2").Activate
Set plage = Range(ActiveCell(1, 1), ActiveCell(NbEnregistrement, 1))

For Each cell In plage
    cell.Value = CStr(cell.Value)
    cell.Value = Replace(cell, " ", "")
    cell.Value = Replace(cell, ",", "")
    cell.Value = Replace(cell, "-", "")
    cell.Value = Replace(cell, ";", "")
    cell.Value = CStr(cell.Value)
    'Pour les cas suivants : FAX0203044456 ou 0201330045SAMB
    'Si ce cas se présente, on remet la case à 0
    If I = Len(cell) > 10 Then cell.Value = "0000000000" Else GoTo finit
            
finit:

Next cell

End Sub
____________________________________________


Voici les soucis dont j'ai besoin de votre aide :

1. Comme je ne sais pas gérer les 2 cas "0307096655FAX" et "SAM0307096655", je met des 0 à la place.

Comment peux-t-on gérer ce cas ? Comment identifier ou détecter les lettres aux chiffres ...Je sais tronquer un champs mais je ne sais pas comment savoir si les lettres sont devant ou derrière.

2. Avant la conversion le format de la cellule est au format Texte. Après la conversion il se transforme au format Numérique et donc il m'enlève le 0. Résultat j'ai 9 Caractères au lieu de 10 attendus.

C'est très important car ce fichier va être importé dans un outils et la condition c'est Format Texte et 10 caractères ni plus ni moins.

Voilà .... MERCI D'AVANCE DE VOTRE AIDE !

Juliette.