Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres Code VBA pour cibler une page et pas la page active d'un document

  • Initiateur de la discussion Initiateur de la discussion Nicoach23
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Nicoach23

XLDnaute Nouveau
Bonjour,

Je travaille sur l'automatisation du code VBA suivant via une feuille google sheet:


Code:
/** @OnlyCurrentDoc */

function ValidationAPSA() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('Z2').activate();
  spreadsheet.getRange('R2:Y2').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};

Je souhaite ensuite l'associer à un déclencheur. Et ça aucun problème...

Mon problème : J'ai plusieurs pages sur mon document et j'aimerais que ce code ne s'applique qu'à la page 'Dates séquences' et pas à la page active... Pour le moment, je ne trouve pas de solution efficace....

Si vous avez des idées ou des pistes...

Merci à vous
 
Bonsoir Nico,
Voici un code que j'avais fait il y a plusieurs années.
Je travaillais avec plusieurs feuilles si cela peut te mettre sur la piste.
Cela reste un exemple de code qui n'est pas du VBA.
Bruno
VB:
function ActualiserStock() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName("DATA");
  var lig=sheet.getRange("K1").getValue();
  var sheet2 = ss.getSheetByName("STOCK");
  var allProtections = sheet2.getActiveSheet().getProtections(SpreadsheetApp.ProtectionType.SHEET);
  protection = allProtections[0];
  protection.remove();
  var range = sheet2.getRange("B2:C19");
  range.clear({contentsOnly: true, skipFilteredRows: true});
   for(lg=2; lg<20;lg++){
      var cuve=sheet2.getRange(lg,1).getValue();
      kit=0;
    for (k = lig; kit == 0 && k >1; k--){
     if (sheet.getRange(k,4).getValue() ==cuve){
      var niv=sheet.getRange(k,7).getValue();
      sheet2.getRange(lg,2).setValue(niv);
      var nat=sheet.getRange(k,5).getValue();
      sheet2.getRange(lg,3).setValue(nat);
      kit=1;
     };
   };
};
 var protection = sheet2.getActiveSheet().protect();
  protection.setDescription('protege');
}
 
Bonsoir,
A essayer car je ne peux le faire.
Bruno
VB:
/** @OnlyCurrentDoc */

function ValidationAPSA() {
 var onglet = SpreadsheetApp.getActive();
onglet.getRange('Z2').activate();
 var sheet = ss.getSheetByName("Dates séquences");
 ss.getRange('R2:Y2').copyTo(spreadsheet.getActiveRange(), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…