от
Я хочу построить скрипт для автоматизации создания формы из определенных значений. Что мне нужно сделать, это: Спросите пользователя, какая строка имеет отношение к форме, введите строку в текстовое поле Лог-значение столбца A этой строки (Дата) Проверьте эту строку из столбца C-ZZZ для значений (чисел) если есть ячейка со значением, зарегистрируйте значение. Если ячейка пуста, игнорируйте ее Если в ячейке есть значение, дополнительно записываются значения строки 1-10 этого столбца (числа строки) создать новый лист скопировать зарегистрированные значения в определенном порядке на этот новый лист (другой порядок, чем на первом листе) Я искал сценарии, которые предлагают какое-то сходство с тем, что я хочу сделать, но мне удалось только скопировать значения определенной строки и вывести их на новый лист без какого-либо форматирования Запросить у пользователя строку (сообщение об ошибке NaN не работает):
function tourzettelZeile() {
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var rowIdxStr = Browser.inputBox("For which row do you want to make the list?");
  if (rowIdxStr == 'cancel') {
    return;
  }
  var rowIdx = parseInt(rowIdxStr);
  if (rowIdx == NaN) {
    Browser.msgBox("Numbers only or 'cancel'");
    return;
  }  

}
Моя попытка регистрации и вставки данных:
function readData(spreadsheetID)
{
  var spreadsheetId = '1KdZNvKgwL6NMuF0FYGB8jBhRVpbwv954D_UcBZ22eh0';
  var plakatMenge = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!DK15:DK900');
  var plakatFormat = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!DK4');  
  var plakatName = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!DK15:DK1');  
  var plakatiererName = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!FK66');  
  var plakatInfo = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!DK7');  
  var plakatGebiet = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!FL66');   
  var auftragDatum = Sheets.Spreadsheets.Values.get(spreadsheetId, 'PlakatTool2019!A66');  
  Logger.log(plakatMenge.values);
  Logger.log(plakatFormat.values);
  Logger.log(plakatName.values);
  Logger.log(plakatiererName.values);
  Logger.log(plakatInfo.values);
  Logger.log(plakatGebiet.values);
  Logger.log(auftragDatum.values);
  Browser.msgBox(plakatMenge   plakatFormat   plakatName   plakatiererName   plakatInfo   plakatGebiet   auftragDatum);

  //Neues Sheet erstellen  
  var requests = [{
    'addSheet': {
      'properties': {
        'title': 'Tourzettel',
        'gridProperties': {
          'rowCount': 80,
          'columnCount': 14
        },
        'tabColor': {
          'red': 1.0,
          'green': 0.3,
          'blue': 0.4
        }
      }
    }
  }];

  var response =
      Sheets.Spreadsheets.batchUpdate({'requests': requests}, spreadsheetId);
  Logger.log('Created sheet with ID: '  
      response.replies[0].addSheet.properties.sheetId);

  //writeValues
  // Specify some values to write to the sheet.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  // ss is now the spreadsheet the script is associated with
  var sheet = ss.getSheets()[5];
var values = [
  [plakatMenge.values, "Gebiet", plakatFormat.values, plakatName.values, plakatiererName.values, plakatInfo.values, plakatGebiet.values, auftragDatum.values]
  ];
  var range = sheet.getRange("A1:H1");
  range.setValues(values);
}
Оба этих сценария не делают правильных действий и не объединяются (информация о том, какую строку проверять, ничего не делает)              

Пожалуйста, войдите или зарегистрируйтесь для публикации ответа на этот вопрос.

Добро пожаловать на сайт ByNets, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...