Size: a a a

Чат | Google Таблицы и скрипты

2018 August 06

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Филипп Чистяков
Понятно обьяснил или неочень?
Да, понятно =transpose(OFFSET(A1;(row()-1)*5;0;5;1))
источник

ФЧ

Филипп Чистяков... in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Да, понятно =transpose(OFFSET(A1;(row()-1)*5;0;5;1))
Спасибо!
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Это для первой строки.
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Дальше формулу можно протянуть вниз.
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
(row()-1)*5 - суть в этом, offset будет перемещаться на нужное кол-во строк вниз в исходном списке
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
для третьей строки на (3-1)*5=10 строк и выведется массив с 11 по 15 и так далее
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
цифрализация бумажной ручной работы!
источник

АВ

Алексей Веселов... in Чат | Google Таблицы и скрипты
Евгений, спасибо большое, работает! А если в качестве а1 будет столбец на листе ' расчеты'!a2:a, а б1 - столбец на листе 'Сравнение цен'!b2:b. Т.е. можно ли сделать тоже самое но для двух данных диапазонов на разных листах?
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Eugeny Namokonov
цифрализация бумажной ручной работы!
Старо ка мир. Кстати, в ближайшем будущем появится такой эффект, который был в моем будущем. Мы все в какой-то момнт поняли, что соцсети это круто, но к этому моменту они уже были 😂 Цифрализация - проблема современности. Многим тяжело всосать, что уже все придумано. Я этог оворил еще на РИФ2011.
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Алексей Веселов
Евгений, спасибо большое, работает! А если в качестве а1 будет столбец на листе ' расчеты'!a2:a, а б1 - столбец на листе 'Сравнение цен'!b2:b. Т.е. можно ли сделать тоже самое но для двух данных диапазонов на разных листах?
Привет, Алексей

Меняем а1 (на любом листе) - подставляется значение в b1 на Лист2.
Меняем b1 (на любом листе) - подставляется значение в a1 на Лист2.

Лист2 можно поменять на любой нужный нам лист.

function onEdit(e){
 var wsData = e.source
 var celEdit = e.range;
 var value = celEdit.getValue();
 
 
 if(celEdit.getA1Notation()=='A1'){wsData.getSheetByName('Лист2').getRange('B1').setValue(value)}
 if(celEdit.getA1Notation()=='B1'){wsData.getSheetByName('Лист2').getRange('A1').setValue(value)}
}
источник

AM

Alena Murlyan in Чат | Google Таблицы и скрипты
Всем привет)  Мне необходимо написать условие - если ячейка содержит запятую, ее необходимо поменять на точку (например, "555,5" на "555.5".  Я придумала вот так:  switch (data[i][0]){
         
         case ",":
         range.offset(i,0,1,1).setValue(".");
         break;
        default: break;  Но срабатывает, если в ячейке стоит только одна запятая. Логически понимаю, что надо изменить условие в case. Подскажите, пожалуйста, как правильно 🙂 Спасибо заранее)) Вот полный скриптик, на всякий случай:                                                                             function onEdit(e) {
 
 var sheet = SpreadsheetApp.getActiveSheet();
 var range = sheet.getActiveRange();
 var data = range.getValues();

 if(range.getColumn()==1){
 for (var i=0;i < data.length;i++){
  range.offset(i,0,1,1).clearFormat();
  range.offset(i,0,1,1).setHorizontalAlignment("left");
  range.offset(i,0,1,1).setVerticalAlignment("center");
  switch (data[i][0]){
         
         case ",":
         range.offset(i,0,1,1).setValue(".");
         break;
   
   default: break;
  }
 }
 }
 };
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Alena Murlyan
Всем привет)  Мне необходимо написать условие - если ячейка содержит запятую, ее необходимо поменять на точку (например, "555,5" на "555.5".  Я придумала вот так:  switch (data[i][0]){
         
         case ",":
         range.offset(i,0,1,1).setValue(".");
         break;
        default: break;  Но срабатывает, если в ячейке стоит только одна запятая. Логически понимаю, что надо изменить условие в case. Подскажите, пожалуйста, как правильно 🙂 Спасибо заранее)) Вот полный скриптик, на всякий случай:                                                                             function onEdit(e) {
 
 var sheet = SpreadsheetApp.getActiveSheet();
 var range = sheet.getActiveRange();
 var data = range.getValues();

 if(range.getColumn()==1){
 for (var i=0;i < data.length;i++){
  range.offset(i,0,1,1).clearFormat();
  range.offset(i,0,1,1).setHorizontalAlignment("left");
  range.offset(i,0,1,1).setVerticalAlignment("center");
  switch (data[i][0]){
         
         case ",":
         range.offset(i,0,1,1).setValue(".");
         break;
   
   default: break;
  }
 }
 }
 };
Привет, Алена, как дела? Что-то надо-то, пройтись по всем ячейкам массива и поменять "." на ","?
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Видимо смутил вопросом.
источник

AM

Alena Murlyan in Чат | Google Таблицы и скрипты
Eugeny Namokonov
Привет, Алена, как дела? Что-то надо-то, пройтись по всем ячейкам массива и поменять "." на ","?
😄 да нет, пытаюсь описать без воды))) Привет)) да, только сразу, по мере внесения информации. вот в скрипте выше работает все, как надо, кроме того, что меняет, если введена только запятая, а если есть еще другие знаки в ячейках - не видит. Может, % или like
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Alena Murlyan
😄 да нет, пытаюсь описать без воды))) Привет)) да, только сразу, по мере внесения информации. вот в скрипте выше работает все, как надо, кроме того, что меняет, если введена только запятая, а если есть еще другие знаки в ячейках - не видит. Может, % или like
Так, ну кейс в данном кейсе, наверное, не лучший выбор. Можно попробовать через replace
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
function ALENA(){
var array = [[1,2, 2.4, 3,4], [1, 2,4, 3,4]]

for(x=0; x<array.length; x++){
  for(y=0; y<array[0].length; y++){

  array[x][y].toString().replace(',', '.')
  }
}
 Logger.log(array)
}
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
вот результат
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Так, а если надо интегрировать в существующий код.
источник

AM

Alena Murlyan in Чат | Google Таблицы и скрипты
Eugeny Namokonov
function ALENA(){
var array = [[1,2, 2.4, 3,4], [1, 2,4, 3,4]]

for(x=0; x<array.length; x++){
  for(y=0; y<array[0].length; y++){

  array[x][y].toString().replace(',', '.')
  }
}
 Logger.log(array)
}
спасибо)) пошла пробовать))) отпишусь!
источник

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
Alena Murlyan
спасибо)) пошла пробовать))) отпишусь!
Ну как?
источник