J'ai créé un petit extrait de code Google Apps Script (GAS) pour faire le travail à votre place.
Code
function sheetRange(targetName,int) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var asName = ss.getActiveSheet().getSheetName();
var tgSheet = ss.getSheetByName(targetName);
var output;
if(targetName == asName) {
output = "Error: target sheet is active sheet !!";
} else {
switch(int) {
case 1:
output = tgSheet.getDataRange().getValues();
break;
case 2:
output = tgSheet.getSheetValues(1, 1, tgSheet.getMaxRows(),
tgSheet.getMaxColumns());
break;
default:
output = "Choose int to be 1 or 2 !!";
}
}
return output;
}
Dans le menu de la feuille de calcul, sélectionnez Outils> Éditeur de script et ajoutez le code. Assurez-vous d'appuyer sur le bouton de bug:
Usage
=sheetRange("sheetName",int)
Utilisez l' int
option comme expliqué dans les remarques.
Exemple
J'ai créé un exemple de fichier vous vous: feuille comme plage
Remarques
Dans ce cas, il existe deux façons de déterminer une plage dans une feuille de calcul via GAS:
int=1
; Via la getDataRange
méthode. Cela récupérera une plage, dans laquelle la dernière colonne est celle qui contient des données. Le même compte pour le nombre de lignes. Il s'agit généralement de l'itinéraire le plus simple. Voir la deuxième feuille dans le fichier d'exemple.
int=2
; Via la getSheetValues
méthode. Cela va récupérer une plage "WYSIWYG". Voir la troisième feuille dans le fichier d'exemple.
- Les taux de rafraîchissement de ces types de fonctions personnalisées ne sont pas immédiats, alors soyez patient. Le rafraîchissement des données peut prendre plusieurs heures.
Les références
Jacob Jan Tuinstra
la source
Vous pouvez utiliser A: Z ou A: AB ou A: XX (XX étant la dernière colonne de votre page):
la source
Google Sheets n'a pas de syntaxe de plage pour la plage de feuilles entière.
La formule suivante renverra l'adresse de plage de la feuille entière nommée Sheet1
Pour l'utiliser comme référence, placez-le dans INDIRECT. La formule suivante renverra un tableau de toutes les valeurs de la feuille Sheet1.
la source
Je n'en connais pas de spécifique, mais je pense que vous pouvez utiliser certaines formules si vous ne connaissez pas le nombre de lignes / colonnes:
Voici
Sheet
le nom de votre feuille et@
une chaîne arbitraire. Si cette feuille que vous sélectionnez a@
dans une cellule, cela ne fonctionnera pas. Vous pouvez le remplacer par un autre caractère si jamais la feuille contient une telle cellule.Le
COUNITF
compte ici le nombre de lignes dans la colonne A: A ne contenant pas@
, ce qui devrait être tout s'il n'y a pas de cellules contenant, etINDIRECT
transforméesSheet!1:###
(où###
est le nombre de lignes) dans une plage réelle sélectionnée.la source
Les meilleures réponses ont déjà été données pour ceux qui opèrent dans appscript, mais si quelqu'un travaille dans Google Sheets, voici une approche qui peut répondre à vos besoins:
Explication : * Vous spécifiez essentiellement la plage via une chaîne qui est concaténée avec le nombre de lignes dans worksheet_name!
Quelques avantages de cette approche : * C'est 'dynamique' ... si vous ajoutez des lignes en bas, la plage s'ajustera en conséquence * Léger - vous pouvez le gifler dans une fonction importrange / query
Inconvénients : * Je ne l'ai pas essayé dans tous les cas, donc cela ne pourrait fonctionner que pour des cas d'utilisation spécifiques * Personnellement, j'ai une préférence pour rendre les choses dynamiques / propres, donc une fonction personnalisée serait un bon compromis entre appscript et cette approche légère
la source
Cela fonctionne pour moi:
Utilisé dans un script lié, combinez le nom de feuille avec un "!" puis obtenez la notation A1 de la plage de données sur la feuille choisie
la source
J'ai pu sélectionner la feuille entière en nommant la plage comme feuille sans le point d'exclamation.
J'avais un onglet nommé data. Au lieu d'utiliser des données! ou données! A1: ZZ.
la source
Pour spécifier la feuille entière comme une plage, veuillez utiliser:
vous pouvez l'essayer ici: https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/clear
ou si vous utilisez Java (pour tout effacer dans Sheet1):
ou si vous souhaitez simplement l'utiliser dans une formule (par exemple: SUM) sur une autre feuille (par exemple: Sheet2), vous pouvez utiliser la référence suivante:
^ cela additionnera toutes les cellules existantes sur la feuille Sheet1 et mettra la valeur dans une cellule de la feuille Sheet2, vous pouvez trouver l'exemple ici: https://docs.google.com/spreadsheets/d/1rP3YCl3ErlYjlYGT_Q-xFvkVr7yKw6WQfHklbohL1NM/edit?usp=sharing . Dans cet exemple, nous avons 3 colonnes et 5 lignes sur la feuille Sheet1, donc cette formule = SUM (Sheet1! A1: ZZ) les sélectionne toutes. Vous pouvez ajouter des lignes ou des colonnes sur la feuille Sheet1 et cette solution sélectionnera toujours toutes les cellules.
PS: si vous votez contre ma réponse, veuillez expliquer pourquoi.
la source
En supposant que vous connaissez le nombre de lignes, vous pouvez nommer la feuille entière comme "nom_feuille":
PAS:
Désormais, chaque fois que vous utilisez "worksheet_name" dans une fonction, il fera référence à la feuille de calcul entière.
la source