Nous avons tous vu les publicités à la télévision: « Appelez le 1-800-OBTENEZ CECI pour votre ensemble de couteaux ultra-tranchants. » Vous pourriez être confronté à la nécessité de convertir les numéros de téléphone de la version texte (comme indiqué sur les annonces) en numéros représentés par ce texte. La macro suivante, DoPhone, effectuera la magie de conversion pour vous:

Sub DoPhone()

Dim rngSrc As Range     Dim lMax As Long, lCtr As Long     Dim J As Integer     Dim Phone As String, Digit As String

Set rngSrc = ActiveSheet.Range(ActiveWindow.Selection.Address)

lMax = rngSrc.Cells.Count

For lCtr = 1 To lMax         If Not rngSrc.Cells(lCtr).HasFormula Then             Phone = rngSrc.Cells(lCtr).Value             For J = 1 To Len(Phone)

Digit = Ucase(Mid(Phone, J, 1))

Select Case Digit                     Case "A" To "P"

Digit = Chr((Asc(Digit) + 1) \ 3 + 28)

Case "Q"

Digit = "7"     'May want to change                     Case "R" To "Y"

Digit = Chr(Asc(Digit) \ 3 + 28)

Case "Z"

Digit = "9"     'May want to change                 End Select                 Mid(Phone, J, 1) = Digit             Next J             rngSrc.Cells(lCtr).Value = Phone         End If     Next lCtr End Sub

La procédure DoPhone tente de convertir les informations dans n’importe quelle cellule qui ne contient pas de formule. Tout ce que vous avez à faire est de sélectionner la ou les cellules que vous souhaitez convertir, puis d’exécuter la procédure. Le résultat est que tout texte dans les cellules est converti en leurs équivalents numériques sur un téléphone. Ainsi, 598-TIPS devient 598-8477.

Vous devriez noter une petite particularité de DoPhone, et vous voudrez peut-être la changer. Certains téléphones reconnaissent les lettres Q et Z comme les chiffres 7 et 9, respectivement. D’autres laissent simplement ces chiffres de côté, ou ils sont convertis en 0. DoPhone, comme écrit ici, convertit ces lettres en 7 et 9. Vous pouvez changer les endroits appropriés dans la structure Select Case, comme vous le souhaitez, afin qu’ils soient modifiés en nombres selon à vos besoins. (Les endroits appropriés sont commentés dans la liste.)

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (11802) s’applique à Microsoft Excel 2007, 2010, 2013 et 2016.

Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

lien: / excel-Converting_Phone_Numbers [Conversion des numéros de téléphone].