Problème de code pour renommer une feuille

Soucis de code ou de nom de référence.

Voici le code

  {
  const ui = SpreadsheetApp.getUi();
  const resultat = ui.prompt('Entrez l année de la nouvelle saison :');

  SpreadsheetApp.getUi().alert('La saison choisie est : ' + resultat.getResponseText());

  sheet.setName(resultat);
   }

Le but est de renommer une feuille dupliquer par une date demandée dans une box

image

mais voilà le nom que ce code met à ma feuille nouvellement créée.

le top serais de pouvoir ajouter du texte juste avant la réponse demandée.

l'onglet s'appellerait: "Entrainement xxxx" les x étant la réponse demandée

image

Mais voilà le nom enregistrer cela doit venir d'un mauvais code et je pense que ça doit être la référence du résultat mais je ne connait pas le code à mettre.

Pouvez-vous m'aider pour ce code un grand merci d'avance

mbell

Tu as donné toi-même la réponse à la ligne au-dessus

  sheet.setName(resultat.getResponseText());

Bonjour steelson,

J'ai surement du oublier quelque chose car le code indique une erreur

image

et à la fin me renvoi comme non "copie de la feuille dupliquée" et non l'intitulé encoder

image

voici le code

function Ns() 

   {

    const ui = SpreadsheetApp.getUi();
    const response = ui.alert('⚠️ Création d une nouvelle saison? ⚠️', ui.ButtonSet.YES_NO);

     if (response == ui.Button.NO) {
      return;
    }

    var spreadsheet = SpreadsheetApp.getActive();

  // Rn(); // retour normal pour copier toute la feuille

  spreadsheet.duplicateActiveSheet(); // recopie la feuille en cours 

 {
    const ui = SpreadsheetApp.getUi();
   //const resultat = ui.prompt('Entrez l année de la nouvelle saison :');

    const resultat = Browser.inputBox('Entrez l année de la nouvelle saison :');
   // SpreadsheetApp.getUi().alert('La saison choisie est : ' + resultat.getResponseText());

    sheet.setName(resultat.getResponseText());

   };

Rn(); // retour normal pour copier toute la feuille

spreadsheet.duplicateActiveSheet(); // recopie la feuille en cours 

  spreadsheet.getRange('F2:Q3').activate(); // selectionne les dates et lieu a supprimer 

  spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true}); // vide les deux premières ligne

  spreadsheet.getRange('F5:Q65').activate(); // selectionne les cellule joueurs
 // spreadsheet.setCurrentCell(spreadsheet.getRange('Q5'));
  spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true}); // Efface les "Absence et Présence" des joueurs

  spreadsheet.getRange('F71:Q85').activate(); // selectionne les cellules coachs

  spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true}); // Efface les "Absence et Présence" des coach

  var spreadsheet = SpreadsheetApp.getActive();  // met le nouveau nom, la couleur bleu de l'onglet et place la feuille en 1er
 // spreadsheet.getRange('D5').activate();
  spreadsheet.getActiveSheet().setTabColor('#0000ff'); // couleur de l'onglet
 // spreadsheet.getRange('B22').activate();
 // spreadsheet.getActiveSheet().setName('Entrainements paraGolf 20..'); // ***** nom de la feuille
//    spreadsheet.getRange('F2').activate();
  spreadsheet.moveActiveSheet(1);

//  Ps(); // protection de la feuille

 Browser.msgBox('⚠️ PROTECTION DE CETTE NOUVELLE SAISON ⚠️'); // message box

    var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('a1').activate();
  var protection = spreadsheet.getActiveSheet().protect(); // protége la feuille
  protection.setUnprotectedRanges([spreadsheet.getRange('F71:Q85'), spreadsheet.getRange('F5:Q65')]) // affiche les cellules non protéger pour les coachs

  var protection = spreadsheet.getActiveSheet().protect();
  protection.setUnprotectedRanges([spreadsheet.getRange('F5:Q65'), spreadsheet.getRange('F71:Q85')]); // protége la feuille
 // spreadsheet.getRange('f2').activate();// se place sur la première cellule à remplir

   spreadsheet.getRange('a1:b3').clear(); // se place en A1

  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
  var date = Utilities.formatDate(new Date(), "GMT", "dd/MM/yyyy"); // recherche la date
  spreadsheet.getRange("A1").setValue(date); // affiche en "A1" la date du jour

   spreadsheet.getRange('A1:B3').activate()
   .merge();   
    spreadsheet.getActiveRangeList().setFontSize(18)
   // =aujourdui()
  spreadsheet.getActiveRangeList().setHorizontalAlignment('right')
  .setVerticalAlignment('middle');
    spreadsheet.getActiveRangeList().setBackground('#00ffffff'); // blanc
      var sheet = SpreadsheetApp.getActiveSheet();

   spreadsheet.getRange('f2').activate(); // se place en f2

 };

merci d'avance une ultime fois Steelson.

mbell

Je n'avais répondu qu'à la dénomination de la feuille ... et plus généralement ce code ne donne pas d'erreur

function creerNouvelleFeuille() {
  const ui = SpreadsheetApp.getUi();
  const resultat = ui.prompt('Entrez l année de la nouvelle saison :');
  SpreadsheetApp.getUi().alert('La saison choisie est : ' + resultat.getResponseText());
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.duplicateActiveSheet()
  sheet.setName(resultat.getResponseText());
}

Pourquoi tu changes ui.prompt en Browser.inputBox ? ce n'est plus le même sujet du coup ... en tous cas ce n'est plus la même réponse. Je t'ai répondu sur ui.prompt ! et cela fonctionne ...

Bonjour Steelson super le fichier fonctionne nickel merci beaucoup

Je fouille encore un petit peu avant de rendre le projet sur une fonction trouvée par hasard j'ai trouvé un petit calendrier mais je vais faire un nouveau post car sujet différent.

On ce réécrit très bientôt Steelson si tu as une solution pour moi.

mbell

Rechercher des sujets similaires à "probleme code renommer feuille"