Comment convertir automatiquement des chiffres en format heure dans Google Sheets ?

Dans le monde dynamique des feuilles de calcul, la capacité à automatiser et à optimiser les processus est un atout précieux.

Google Sheets offre une flexibilité remarquable à travers l’utilisation de Google Apps Script, un langage de script basé sur JavaScript qui permet d’étendre les fonctionnalités des applications Google, y compris Sheets.

Un exemple concret de cette capacité est la conversion automatique de chiffres en format heure.

Dans cet article, nous allons vous montrer comment utiliser un script simple pour transformer une série de 4 chiffres en un format d’heure lisible et correctement formaté dans Google Sheets.

Pourquoi est-ce utile ?

Imaginons que vous ayez une série de données représentant des heures sous forme de chiffres sans séparation (par exemple, 1530 pour 15h30). Sans conversion, ces données restent peu claires et peuvent entraver l’analyse et la présentation. Notre script intervient ici pour faciliter cette transformation, rendant vos données temporelles immédiatement compréhensibles et prêtes à l’emploi.

Le script de conversion

Voici le script que vous pouvez utiliser :

function onEdit(e) {
  var COLONNE_A_VERIFIER = 1;
  var NOM_FEUILLE = "Feuille1";
  var ENTETE = 1;
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var feuille = ss.getActiveSheet();

  if(feuille.getName() === NOM_FEUILLE){
    var celluleSelectionnee = feuille.getActiveCell();
    if(celluleSelectionnee.getRow() > ENTETE && celluleSelectionnee.getColumn() === COLONNE_A_VERIFIER){
      celluleSelectionnee.setNumberFormat("@");
      var valeurCellule = celluleSelectionnee.getValue();

      if(/^\d{4}$/.test(valeurCellule)){
        var nombreCellule = Number(valeurCellule);
        if(nombreCellule > 2400){
          celluleSelectionnee.setValue("Erreur : Heure > 2400");
        }else if(nombreCellule % 100 >= 60){
          celluleSelectionnee.setValue("Erreur : Minutes >= 60");
        } else{
          var heure = valeurCellule.substring(0, 2) + ":" + valeurCellule.substring(2);
          celluleSelectionnee.setValue(heure);
          celluleSelectionnee.setNumberFormat("HH:mm");
        }
      }else if(valeurCellule === ""){
        celluleSelectionnee.setNumberFormat("@");
      }else{
        celluleSelectionnee.setValue("Erreur : Pas un nombre");
      }
    }
  }
}

Comment utiliser le script ?

  1. Ouvrez votre Google Sheet.
  2. Dans la barre de menu, cliquez sur Extensions > Apps Script.
  3. Copiez et collez le script ci-dessus dans l’éditeur Apps Script.
  4. Enregistrez et fermez l’éditeur.
  5. Retournez à votre feuille de calcul et commencez à saisir des nombres de 4 chiffres dans la colonne spécifiée. Le script convertira automatiquement ces chiffres en format heure.

L’automatisation des tâches répétitives dans Google Sheets non seulement économise du temps mais améliore également l’exactitude de vos données. Avec le script fourni, vous pouvez rapidement transformer des chiffres en format heure, facilitant ainsi l’analyse et la visualisation de vos données temporelles. Expérimentez avec ce script et découvrez comment il peut vous aider à gérer vos feuilles de calcul plus efficacement.