Saisie numéro de téléphone dans une cellule

Bonjour,

Est-il possible de renseigner dans une cellule tous formats de numéros téléphoniques, sans renvoi d'erreur.

Les personnes (mes collègues) qui renseignent les cellules, utilisent régulièrement le copier-coller depuis un document word, de numéros téléphoniques sans format défini. Lorsqu'ils saisissent des numéros manuellement, ils laissent libre cours à leur fantaisie.

Cela donne : 0033678256748 / +33(65)122574 - 00 223 76 78 26 98 ou encore 06.12.28.98.74, 07/12/14/26/92

L'idée serait que la cellule destination, conserve et accepte tous les caractères ou formats saisis sans rechigner.

Merci pour votre aide

'**** Correspond au programme de la ComboBox3 "Pays"  ****
Private Sub ComboBox3_Enter()
'Pour paramétrer le nombre de chiffres des numéros de téléphone --> fixe
    If ComboBox3 = "Belgique" Then    ' (+32) | [10-10-10]
        TextBox_5.MaxLength = 10
        TextBox_5 = Format(TextBox_5, "0# ## ## ## ##")
    End If
    If ComboBox3 = "Espagne" Then    ' (+34) | [9-9-9]"
        TextBox_5.MaxLength = 9
        TextBox_5 = Format(TextBox_5, "(0## ### ###")
    End If
    If ComboBox3 = "France" Then    ' (+33) | [10-10-10]"
        TextBox_5.MaxLength = 12
        TextBox_5 = Format(TextBox_5, "(0#) ## ## ## ##")
    End If
    If ComboBox3 = "Italie" Then  ' (+39) | [10-10-10]"
        TextBox_5.MaxLength = 10
        TextBox_5 = Format(TextBox_5, "0# ## ## ## ##")
    End If
    If ComboBox3 = "Luxembourg" Then    ' (+352) | [8-9-9]"
        TextBox_5.MaxLength = 8
        TextBox_5 = Format(TextBox_5, "0# #### ###")
    End If
    If ComboBox3 = "Pays Bas" Then    ' (+31) | [10-10-10]"
        TextBox_5.MaxLength = 10
        TextBox_5 = Format(TextBox_5, "0# ## ## ## ##")
    End If
    If ComboBox3 = "Portugal" Then    ' (+351) | [9-9-9]"
        TextBox_5.MaxLength = 9
        TextBox_5 = Format(TextBox_5, "0## ### ###")
    End If
End Sub

un exemple

Merci pour cette proposition :

Je joins un extrait de mon fichier.

Mes collègues privilégient le copier-coller et parfois, cela compromet l'intégrité du fichier et sa bonne marche. Il peut arriver que 10 numéros avec des indicatifs de différents pays soient reportés dans une même cellule. Ils ne feront pas la saisie manuellement car le fichier en question, n'est que rarement sollicité par les personnes qui en ont l'utilité.

Ils reçoivent souvent des messages d'erreur... erreur de format, symbole "+" refoulé, ou zéro supprimé.

Ils sont rétifs et se cantonnent à des actions de base sur excel. Cela me laisse peut de marge pour anticiper toutes les erreurs possibles.

Si la cellule accepte tout ce que l'on y insère, sans qu'elle en modifie la forme, ou en signale l'erreur, ce sera déjà pas mal.

10test.xlsx (22.68 Ko)

Merci Troll pour ta proposition que j'utiliserai sur mon fichier personnel.

Pour ce qui concerne du fichier de groupe, la solution fourre-tout ci-après (je vais l'adapter), devrait satisfaire mes collègues :

- Ils doublent clic sur la cellule, et insère leur copier-coller dans un inpubox; un commentaire contenant pêle-mêle le ou les numéros quelque-soit leur format, est automatiquement créé.

Bonne nuit

Sub Comment()
    Dim ans As String, oComment, Cmnt As String
    Cmnt = InputBox("Please enter a comment")
    With ActiveCell
        If .Comment Is Nothing Then
            .NoteText Cmnt
        Else
            ans = MsgBox("Yes = Add" & Chr(10) & "No = Replace ", vbYesNo + vbInformation)
            If ans = vbYes Then
                oComment = .Comment.Text
                .NoteText oComment & Chr(10) & Cmnt
            ElseIf ans = vbNo Then
                .NoteText Cmnt
            End If
        End If
    End With
    ActiveCell.Comment.Shape.TextFrame.Characters.Font.Size = 12
    ActiveCell.Font.FontStyle = "MS Reference Sans Serif"
    ActiveCell.Font.Bold = True
    ActiveCell.Comment.Visible = False
End Sub
Rechercher des sujets similaires à "saisie numero telephone"