Ouverture d'une feuille google sheet sur la ligne de la date du jour

Bonjour,

J'ai besoin de votre aide. En effet, je tiens un listing des sorties pour les écoles de mon secteur à l'aide de google sheet.

En colonne A, j'indique une date au format jj/mm/aaaa et en colonne C, l'heure de début de la sortie.

Quand j'ajoute des sorties, j'aimerais qu'elles se trient toutes seules et se placent dans les bonnes lignes selon les critères suivants date (colonne A) puis heure de sortie (colonne C). Je pense qu'il faut faire une macro mais je ne sais pas faire.

De plus, à l'ouverture du document, je souhaiterais, afin de ne pas perdre de temps, qu'il s'ouvre sur les lignes du jour. Cela m'évitera de faire défiler à chaque fois le document qui comporte plusieurs centaines de lignes.

Espérant avoir été suffisamment clair dans mes explications.

Bien cordialement.

Bonjour

tes explications sont très claires

aurais-tu un embryon de fichier à partager ?

Bonjour,

comment puis-je partager le document... En MP?

Si c'est en google sheet, il faut aller sur google sheet, cliquer sur partager en haut à droite puis ...

capture d ecran 305

Voici un début

https://docs.google.com/spreadsheets/d/1lsHjFNgfU8oaHRcAR4FphAqoFSInyahirxTqxBldH3I/edit?usp=sharing

function autoSort(feuille) {
  var r = feuille.getDataRange();
  r = r.offset(1, 0);
  r.sort([{column: 1, ascending: false}, {column: 3, ascending: false}]);
}

function onEdit(event) {
  var r = event.source.getActiveRange();
  var f = event.source.getActiveSheet();
  if (r.getColumn() == 1) {
    autoSort(f);
    var values = f.getRange('B:B').getValues().join().split(","); 
    var ligne = values.indexOf("") + 1; 
    f.setActiveSelection('B' + ligne);
  }
  if (r.getColumn() == 3) {
    autoSort(f);
    var values = f.getRange('D:D').getValues().join().split(","); 
    var ligne = values.indexOf("") + 1; 
    f.setActiveSelection('D' + ligne);
  }
}

Il faut ajouter un déclencheur sur onEdit

Il me reste à faire l'ouverture du document.

Il faut que j'ajoute ces lignes de codes???? Houla, je ne sais pas faire ça.

Je veux bien partager ma feuille mais il y a des noms d'écoles ...n'est-ce pas contraire au règlement du forum qui interdit les informations personnelles... cela ne me dérangerait pas de te les partager en MP en revanche... dis- moi ce que je dois faire...

Tu peux partager en mp. Mais le mieux est de savoir le faire toi-même.

  1. ouvre le fichier google sheets
  2. Outils > Editeur de script
  3. Colle ces lignes de codes à la place de la fonction qui est proposée
  4. Enregistre ... on te demandera peut-être un nom (quelconque)
  5. Reviens sur la feuille
  6. Outils > Macros > Importer
  7. Importe les fonctions
  8. Retourne dans l'éditeur de script
  9. Clique sur l'horloge
  10. Mets un déclencheur sur onEdit (fais déjà tout ce qui précède et on verra ce point ensuite)

Pour les points 1 à 8 je peux te le faire, mets le lien du fichier en mp

Bon courage, c'est simple !

Pour aller à aujourd'hui,

Ajoute ceci

function onOpen() {
 var menu = [{name: "Aller à Aujourd'hui", functionName: "jumpToDate"}];
 SpreadsheetApp.getActiveSpreadsheet().addMenu("Aujourd'hui", menu);
 jumpToDate();
}

function jumpToDate() {
 var doc = SpreadsheetApp.getActiveSpreadsheet();
 var f = doc.getActiveSheet();
 var r = f.getRange("A:A");
 var valeurs = r.getValues();  
 var unjour = 24*3600*1000;  
 var aujourdhui = parseInt((new Date().setHours(0,0,0,0))/unjour);  
 var jour; 
 for (var i=0; i<valeurs.length; i++) {
   try {
     jour = valeurs[i][0].getTime()/unjour;
   }
   catch(e) {
   }
   if (jour && Math.floor(jour) >= aujourdhui) {
     f.setActiveRange(r.offset(i,0,1,1));
     break;
   }    
 }
}
  1. ouvre le fichier google sheets
  2. Outils > Editeur de script
  3. Ajoute ces lignes de code
  4. Enregistre
  5. Reviens sur la feuille
  6. Outils > Macros > Importer
  7. Importe les deux nouvelles fonctions
  8. Retourne dans l'éditeur de script
  9. Clique sur l'horloge
  10. Mets un déclencheur sur onOpen (fais déjà tout ce qui précède et on verra ce point ensuite)
  11. Tu auras aussi un nouveau menu Aujourd'hui qui apparaîtra
Rechercher des sujets similaires à "ouverture feuille google sheet ligne date jour"