,

Formatage des numéros de téléphone avec Apps Script

Le défi du formatage des numéros de téléphone

Avez-vous déjà eu à gérer une liste de numéros de téléphone provenant de différentes sources ? Il est probable que vous ayez rencontré divers formats, ce qui peut entraîner de la confusion et des erreurs de communication. Certains numéros peuvent inclure des indicatifs de pays, tandis que d’autres non, et la présence de caractères spéciaux tels que des tirets ou des espaces peut compliquer davantage les choses.

La solution : Google Apps Script à la rescousse

Heureusement, Google Apps Script offre une solution simple à ce problème. Ce puissant outil vous permet d’automatiser et de personnaliser Google Workspace selon vos besoins spécifiques. Avec quelques lignes de code, vous pouvez créer une fonction qui formate automatiquement les numéros de téléphone au format international standard.

Explication du code

Voici un exemple de fonction Apps Script qui formate un numéro de téléphone au format international, en supposant que vous soyez en France (+33) :

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
/**
* Formate un numéro de téléphone pour qu’il soit compatible au format international
* @param {string} numero - Numéro de téléphone saisi par l'utilisateur
* @returns {string} - Numéro formaté avec l’indicatif pays
*/
function formatPhoneNumber(numero) {
// Supprime tous les caractères non numériques
let nettoye = numero.replace(/\D/g, '');
// Supprime le 0 au début si présent
if (nettoye.startsWith('0')) {
nettoye = nettoye.substring(1);
}
// Ajoute l’indicatif +33 (Indonésie) si manquant
if (!nettoye.startsWith(33)) {
nettoye = 33 + nettoye;
}
return nettoye;
}
/** * Formate un numéro de téléphone pour qu’il soit compatible au format international * @param {string} numero - Numéro de téléphone saisi par l'utilisateur * @returns {string} - Numéro formaté avec l’indicatif pays */ function formatPhoneNumber(numero) { // Supprime tous les caractères non numériques let nettoye = numero.replace(/\D/g, ''); // Supprime le 0 au début si présent if (nettoye.startsWith('0')) { nettoye = nettoye.substring(1); } // Ajoute l’indicatif +33 (Indonésie) si manquant if (!nettoye.startsWith(33)) { nettoye = 33 + nettoye; } return nettoye; }
/**
* Formate un numéro de téléphone pour qu’il soit compatible au format international
* @param {string} numero - Numéro de téléphone saisi par l'utilisateur
* @returns {string} - Numéro formaté avec l’indicatif pays
*/
function formatPhoneNumber(numero) {
  // Supprime tous les caractères non numériques
  let nettoye = numero.replace(/\D/g, '');

  // Supprime le 0 au début si présent
  if (nettoye.startsWith('0')) {
    nettoye = nettoye.substring(1);
  }

  // Ajoute l’indicatif +33 (Indonésie) si manquant
  if (!nettoye.startsWith(33)) {
    nettoye = 33 + nettoye;
  }

  return nettoye;
}

Décortiquons le code :

  1. Suppression des caractères non numériques : La première étape consiste à supprimer tous les caractères qui ne sont pas des chiffres à l’aide de la méthode replace() et d’une expression régulière. Cela garantit que seul le numéro de téléphone brut est conservé.
  2. Suppression du zéro initial : Dans certains pays, les numéros de téléphone nationaux commencent par un zéro. Cette étape supprime ce zéro initial pour éviter toute confusion avec l’indicatif de pays.
  3. Ajout de l’indicatif de pays : Si le numéro de téléphone ne commence pas déjà par l’indicatif de pays (+62 pour l’Indonésie dans cet exemple), il est ajouté au début du numéro.
  4. Retour du numéro formaté : Enfin, la fonction renvoie le numéro de téléphone formaté au format international.

Comment utiliser ce code dans Google Workspace ?

Voici quelques exemples de la façon dont vous pouvez utiliser cette fonction dans Google Workspace :

  • Google Sheets : Vous pouvez utiliser cette fonction dans une feuille de calcul Google pour formater automatiquement une colonne de numéros de téléphone. Cela peut être utile pour nettoyer les données d’importation ou pour assurer la cohérence des listes de contacts.
  • Google Forms : Si vous utilisez Google Forms pour collecter des numéros de téléphone, vous pouvez utiliser Apps Script pour formater les numéros automatiquement lorsqu’ils sont soumis. Cela permet de s’assurer que les données collectées sont toujours dans le bon format.
  • Google Contacts : Vous pouvez créer un script qui formate automatiquement tous les numéros de téléphone de vos Google Contacts. Cela peut être utile si vous devez exporter vos contacts vers un autre système ou si vous souhaitez simplement maintenir une liste de contacts propre et cohérente.

Personnalisation et extension

L’exemple de code fourni est un point de départ. Vous pouvez le personnaliser et l’étendre en fonction de vos besoins spécifiques. Par exemple, vous pouvez modifier l’indicatif de pays pour l’adapter à votre emplacement, ou vous pouvez ajouter une logique supplémentaire pour gérer différents formats de numéros de téléphone.

Voici quelques idées d’extension :

  • Ajouter la prise en charge de plusieurs indicatifs de pays.
  • Valider la longueur du numéro de téléphone.
  • Formater le numéro avec des espaces ou des tirets pour une meilleure lisibilité.

Conclusion

En tirant parti de Google Apps Script, vous pouvez facilement automatiser le formatage des numéros de téléphone et rationaliser vos communications internationales. Ce simple outil peut vous faire gagner du temps, réduire les erreurs et améliorer l’efficacité de votre flux de travail. Alors, pourquoi ne pas l’essayer et découvrir la puissance de Google Apps Script par vous-même ?