Good day.
google script spreadsheet
I try to create a matrix, if the data array is small, then everything works fine, of course, if it exceeds 800 rows and more I rest on the error "The maximum allowed execution time has been exceeded". Not effectively creating a matrix:
var s = SpreadsheetApp.getActiveSheet(); //ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ°ΠΊΠΎΠΉ Π»ΠΈΡΡ ΠΎΡΠΊΡΡΡ var toAddArray = []; //ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡΡΡΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² Π±ΡΠ΄Π΅ΠΌ Π² Π½Π΅Π³ΠΎ ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΡΠ΅ΡΠΈΠΉΠ½ΠΈΠΊΠΈ for (i = 1; i <= s.getLastRow()+1; ++i){ //Π½Π°ΡΠΈΠ½Π°Π΅ΠΌ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ Π²Π΅ΡΡ ΡΡΠΎΠ»Π±ΠΈΠΊ Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, ΡΠ°ΠΏΠΊΡ ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΠΌ var numbr = s.getRange(i,4); //ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΠ΅ΠΉΠΊΡ ΠΊΠ°ΠΊ ΠΎΠ±Π»Π°ΡΡΡ (ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ 4 ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°) var Valus = numbr.getValues().toString(); //ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ΅ΠΉΠΊΠΈ //ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ»ΡΡΡΡΠ΅ΠΌ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΌΠ°ΡΠΊΠ΅ var newznach = Valus.replace(/\-/g, "").replace(/[0-9][0-9][0-9][0-9][0-9][a-zA-ZΠ°-ΡΠ-Π―][a-zA-ZΠ°-ΡΠ-Π―]/g, "").replace(/[a-zA-ZΠ°-ΡΠ-Π―][a-zA-ZΠ°-ΡΠ-Π―]/g, ""); toAddArray.push([i.toFixed(0),Valus,newznach]); //Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΌΠ°ΡΡΠΈΠ² 0- Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ, 1- ΠΈΡΡ
ΠΎΠ΄Π½ΡΠ΅Π΄Π°Π½Π½ΡΠ΅, 2- "ΠΎΡΠΈΡΠ΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅" } As a result, the output has a matrix:
{ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ΅, ΠΏΠΎΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ΅, ΠΏΠΎΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ΅, ΠΏΠΎΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ... } Is it possible to somehow get the same array without busting?
getRangesetRangein cycles is a sin. - oshliaer