#3. Comment j’ai mis à jour les numéros de mon répertoire téléphonique selon la nouvelle numérotation adoptée au Maroc

Les étapes de la manipulation :

1. Sauvegarde des contacts.

2. Transfert des contacts sur Microsoft Outllook.

3. Actualisation des numéros à l’aide d’une macro.

4. Transfert des contacts actualisés de nouveau vers le smartphone.

Sans entrer dans les détails et dans le but de ne pas retarder la publication de ce billet davantage, je vais me contenter pour le moment du publier le code source de la macro que j’ai utilisé pour mettre à jour les numéros de contacts déjà synchronisé avec Microsoft Outlook.

Avertissements :
– N’exécutez pas cette macro, si vous n’avez pas effectué une sauvegarde récente de votre répertoire téléphonique sur votre PC comme expliqué auparavant ;
– Cette macro ne concerne que les clients mobiles marocains ;
– Si vous décidez d’essayer ma méthode, je ne peux en aucun cas être responsable de toute sorte de perte de données. D’ailleurs je vais vous montrer comment récupérer son répertoire sauvegardé en cas de problème dans le billet suivant.

III. Mise en œuvre de la macro avec VBA sous Microsoft Outlook :

Pour résumer la macro, parcourt les contacts et modifie les multiples numéros composés de 9 chiffres de chacun d’entre eux, selon ces règles :

  • Pour les numéros du fixe commençants par 02 & 03, le 5 sera inséré après le zéro ;
  • Pour les numéros du mobile commençants par 01, 04, 05, 06, 07, 091, 093, 094, 095, 096, 097, 098, 099, le 6 sera inséré après le 0 ;
  • Pour les numéros fixes non géographiques commençants par 08, la macro insère un 0 après le 08 ;
  • Pour les numéros fixes non géographiques commençants par 090 et 092, on insère le chiffre 8 avant le chiffre 9.

Si vous n’avez pas encore mis à jour votre répertoire, utilisez ma macro :

1. Sauvegardez votre répertoire sur ordinateur ;

2. Transférez les contacts à traiter sur Microsoft Outlook ;

3. Téléchargez le code source de la macro en faisant un clic droit sur le lien ci-dessous et choisissez dans le menu contextuel « Enregistrez la cible du lien sous … » si vous utilisez Firefox (« Enregistrer le contenu lié sous » pour Opera ou « Enregistrer la cible sous … » si vous êtes assez têtu pour naviguer toujours avec Internet Explorer :-p )

Télécharger le code de la macro sous format texte : code-macro.txt

4. Ouvrez le fichier texte téléchargé, sélectionnez tout son contenu (Edition > Sélectionner tout)  et copiez le dans le presse-papiers (Edition > Copier) ;

5. Ouvrez Microsoft Outlook et ouvrez l’éditeur VBA via le menu Outils > Macros > Visual Basic Editor (Version 2000, XP, 2003 et 2007 d’Outlook). L’éditeur est également accessible via le raccourci clavier « Alt+F11 ».

6. Dans la nouvelle fenêtre qui s’ouvre, avant de coller (Edition > Coller) le code copié, double-cliquez sur l’élément ThisOutlookSection (1) et assurez-vous que la liste (2) affiche « (Général) » et la (3) affiche ‘(Déclarations)’ :

7. Il ne vous reste plus qu’à exécuter la macro en cliquant sur le bouton « Exécuter Sub/Userform », sélectionner dans la liste des procédures : « ThisOutlookSession.MajContacts » et cliquer sur le bouton « Exécuter » :

Au début du traitement, un premier balayage est proposé à l’utilisateur pour remplacer l’indicatif du Maroc « +212 » par « 0 ». Si ce traitement est ignoré, les numéros commençants par « +212 » ne seront pas mis à jour.

Dans mon cas, mon répertoire contient 555 contacts, la majorité ont un seul numéro mais y a aussi ceux qui en possèdes plusieurs. Ma macro prend ce détail en compte et ainsi traite l’ensemble des numéros d’un contact donné : Portable, portable (privé), portable (prof.), Téléphone, Télé (domicile), Tél (travail), fax …

Certains numéros ne doivent pas être mis à jour car ils ne sont pas concernés par cette nouvelle numérotations : Les numéros spéciaux de l’opérateur, les numéros d’appel d’urgence et ceux de mes contacts en Europe. Ces numéros sont facile à identifier par leurs taille (Le nombre de chiffres qui les compose). Seuls les numéros à 9 chiffres (comme 068123456) seront modifiés si et si seulement ils commencent par un indicatif de fixe, d’un mobile ou d’un numéro fixe non géographique.

A la fin du traitement, une note, facilement identifiable par sa couleur rose, est crée. Elle contient le journal des modifications effectués. Cette note sera transférée vers le mobile, par la suite, pendant la synchronisation dans le sens contraire (Du PC vers le Mobile) afin de garder une trace de l’ancienne et la nouvelle version du répertoire.

8. Vérifiez maintenant vos contacts dans la section « Contacts » d’Outlook pour être sûr que les numéros sont correctement actualisés. Si comme chez moi, la macro a bien fait sont boulot, je vous montrerai, Incha allah, dans mon prochain et dernier billet de cette série, comment transférer les contacts modifiés sur le mobile et par la même occasion comment restaurer son répertoire initial en cas de problème.

A la prochaine 😉

Je me suis inspiré de ce petit bout de code dans cette discussion pour créer cette macro.

9 réflexions au sujet de « #3. Comment j’ai mis à jour les numéros de mon répertoire téléphonique selon la nouvelle numérotation adoptée au Maroc »

  1. nasser 23 mars 2009 at 10:49

    Ma méthode est un peu prés la même, sauf que j’ai utilisé le bloc-note avec la fonction chercher remplacer à la place de la macro, je l’ai fait pour 3000 contacts, (pour le n96 de mon oncle) ça m’a pris 1h30min environ en tout.

    amicalement nasser

  2. Nabil 23 mars 2009 at 14:00

    @nasser > Le danger de ta méthode Nasser, c’est qu’il est possible de tomber sur des numéros qui contiennes les chiffres à modifier à l’intérieur et pas uniquement au début, comme : 068 02 30 63 > 068 (023) (063) …

  3. nasser 23 mars 2009 at 14:15

    Tu crois quand même pas que je n’y ai pas pensé nabil 🙂

    J’ai fait plutôt genre :

    remplace : 053 par : 0653
    remplace : 078 pas : 0678

    Donc je ne modifie que le début, et voila le travail bienfait (presque) vite fait 🙂

    a+

  4. Nabil 23 mars 2009 at 14:22

    Je sais, mais pour un numéro comme 078236078 ça va donner 06782360678 non ?

  5. nasser 23 mars 2009 at 14:34

    Tu as raison, mais t’a oublié de prendre en compte le : dans au début de chaque numéro, c’est lui qui m’a aidé a résoudre le problème.

    Relis mon premier commentaire en prenant en compte le : qui me permet de ne modifier que le début, car il n’y a pas de : au centre du numéro.

  6. Nabil 23 mars 2009 at 14:49

    Oui il ne faut changer que le début ce qui t’oblige, avec la méthode de « Rechercher/Remplacer » de passer les numéros un par un, et éviter la délicieuse case à cocher « Remplacer tout » 😉

  7. Nabil 23 mars 2009 at 14:50

    Arf, ce FF n’est pas à jour 😕

Laisser un commentaire

Nom *
Adresse de messagerie *
Site web

Le temps imparti est dépassé. Merci de saisir de nouveau le CAPTCHA.