Google Apps script
Et pourtant la question portait sur le script. J'utilise toujours avec succès le code suivant :
function unionRanges(e) {
var result = [];
var length = 0;
var i = 0;
try {
for (i = 0; i < arguments.length; i++)
length += arguments[i].length;
if (length > 3000) return '#BIGRANGE';
for (var i = 0; i < arguments.length; i++)
result = result.concat(arguments[i].filter(function (el) {
return el.join('').length > 0
}));
return result;
} catch (err) {
return JSON.stringify(err);
}
}
Fonctionnalité des feuilles de calcul
Mais, comme indiqué ci-dessus, il est plus facile d'utiliser {}
-notation.
={ Sheet1!A1:C10 ; Sheet2!A1:C34 }
Concaténation verticale
={ Range(Cols=N) ; Range(Cols=N) }
Concaténation horizontale
={ Range(Rows=M) , Range(Rows=M) }
Il est possible de combiner
={ { , , } ; { , , } }
Ou quelque chose de plus dur
={{{;;},{;;}};{{;;},{;;}};{{;;},{;;}}}
Essayez quelque chose comme ceci
={
{{ 1; 2; 3},{ 4; 5; 6}};
{{ 7; 8; 9},{10;11;12}};
{{13;14;15},{16;17;18}}
}
La concaténation horizontale interne n'est pas nécessaire.
={
{ 1; 2; 3},{ 4; 5; 6};
{ 7; 8; 9},{10;11;12};
{13;14;15},{16;17;18}
}
Dépendances locales des délimiteurs d'arguments
Si votre locale actuelle supporte ,
comme délimiteur d'argument alors vous devez utiliser ;
pour une concaténation verticale et ,
pour une concaténation horizontale.
Sinon, votre délimiteur d'argument est ;
et vous devez utiliser ;
y \
(sans espace), respectivement.
Feuille 'Data 1'!A1:C20
| Name | Date | Sum |
| Ethan | 3/4/2017 | 31 |
| Logan | 3/6/2017 | 62 |
| Brian | 3/26/2017 | 61 |
| ... | ... | ... |
Feuille 'Data 2'!A1:C20
| Name | Date | Sum |
| Nathan | 3/30/2017 | 53 |
| Alyssa | 3/13/2017 | 72 |
| John | 3/24/2017 | 79 |
| Megan | 3/16/2017 | 10 |
| ... | ... | ... |
Concaténation
Concaténation verticale
={'Data 1'!A1:C20;'Data 2'!A2:C20}
Résultat
| Name | Date | Sum |
| Ethan | 3/4/2017 | 31 |
| Logan | 3/6/2017 | 62 |
| Brian | 3/26/2017 | 61 |
| ... | ... | ... |
| Nathan | 3/30/2017 | 53 |
| Alyssa | 3/13/2017 | 72 |
| John | 3/24/2017 | 79 |
| ... | ... | ... |
Concaténation horizontale
={TRANSPOSE('Data 1'!A1:C20),TRANSPOSE('Data 2'!A2:C20)}
Résultat
| Name | Ethan | Logan | Brian | ... | Nathan | Alyssa | John |
| Date | 3/4/2017 | 3/6/2017 | 3/26/2017 | ... | 3/30/2017 | 3/13/2017 | 3/24/2017 |
| Sum | 31 | 62 | 61 | ... | 53 | 72 | 79 |
En savoir plus Comment concaténer des plages dans les feuilles de calcul Google ?