Masquer colonne ou ligne via un script

Bonjour à tous,

Après plusieurs recherches, je ne trouve pas ce que je recherche et j'ai du mal à comprendre le fonctionnement des script sur Google Sheets.

Je cherche a masquer les colonnes et lignes contenant le caractère "-" en automatique sur ma feuille nommée DD.

Par exemple si ma cellule B5 contient "test / - ", je souhaiterait masquer la colonne B et la ligne 5.

Quelqu'un pourrait il m'aider à construire le script et le comprendre afin d'être autonome si je doit le reproduire?

Merci

Hello,

Google App Script est un mélange de VBA (un peu) et de Javascript(beaucoup) donc si tu ne trouves pas exactement ce que tu cherches à faire en GAS, tu peux essayer des recherches dans ces 2 langages.

Voici un essai :

function FindTxt() {

  var ss = SpreadsheetApp.getActiveSpreadsheet(); // Projet en cours
  var Sheet = ss.getActiveSheet(); // Feuille active
  var LR = Sheet.getLastRow() // Derniere ligne utilisée
  var LC = Sheet.getLastColumn() // Derniere Colonne utilisée
  var txtSearch = "-" // txt à rechercher

  for (var j = 1;j<=LC;j++)  // Boucle sur les colonnes
    for(var i=1;i<=LR;i++)   // Boucle sur les lignes
      if (Sheet.getRange(i,j).getValue()) { 
        if (Sheet.getRange(i,j).getValue().indexOf(txtSearch) > -1) {// Teste si dans la cellule il y a la valeur de la variable txtSearch
            Sheet.hideRows(i)     // Masque la ligne trouvée
            Sheet.hideColumns(j)  // Masque la colonne trouvée
        }
      }
}

Hello Rag02700,

Merci pour ton aide, ton script fonctionne parfaitement sauf que je n'arrive pas à le faire fonctionner comme je le souhaite...

Si on prend l'exemple du tableau ci-après, le script cache la colonne 1 et toutes les lignes de la colonne 1 contenant le caractère "-". Or je souhaiterait que les lignes de la colonne 1 contenant le caractère "-" soit caché après la ligne 6 et pareil pour les colonnes après la colonne 2.

1joueur1
2joueur2
3-
4-
5matchjoueur2-
6joueur1
7-

Pensez-vous que cela soit possible?

Merci

Hello,

Pas sûr d'avoir tout bien compris mais testons :

function FindTxt() {

  var ss = SpreadsheetApp.getActiveSpreadsheet(); // Projet en cours
  var Sheet = ss.getActiveSheet(); // Feuille active
  var LR = Sheet.getLastRow() // Derniere ligne utilisée
  var LC = Sheet.getLastColumn() // Derniere Colonne utilisée
  var txtSearch = "-" // txt à rechercher

  for (var j = 1;j<=LC;j++)  // Boucle sur les colonnes
    for(var i=1;i<=LR;i++)   // Boucle sur les lignes
      if (Sheet.getRange(i,j).getValue()) { 
        if (Sheet.getRange(i,j).getValue().indexOf(txtSearch) > -1) {// Teste si dans la cellule il y a la valeur de la variable txtSearch
           if (i>6){ Sheet.hideRows(i) }    // Masque la ligne trouvée
           if (j>2){ Sheet.hideColumns(j)}  // Masque la colonne trouvée
        }
      }
}

Merci pour ton retour, j'ai un souci d'accès au script sur Sheets depuis plusieurs jours, je testerais dès le retour à la normale!!

Rechercher des sujets similaires à "masquer colonne ligne via script"