Попытка добавить несколько различных функций приращения в таблицу Google через appscript - PullRequest
0 голосов
/ 05 мая 2020

Итак, я выполнил инструкции из нескольких сообщений, чтобы создать функцию AppsScript, которая позволяет мне подсчитывать голоса за ответы в общей таблице Google. Я пытаюсь создать форму для совместной работы, в которой сотрудники могут отправлять свои отзывы, а затем, вместо того, чтобы иметь несколько таких отзывов, дополнительные сотрудники, которые согласны, могут нажать кнопку, где подсчитывается количество полученных отзывов.

Я получил, что это работает для одной строки, но как мне использовать несколько функций «приращения» на одном листе? Каждая функция будет представлять ответы из другой строки, но, как вы, вероятно, знаете, когда вы выбираете, какую функцию присоединить к кнопке (чертежу), вы можете вставить только имя функции, которое будет таким же «приращением» даже хотя функции написаны по-другому ...

К сожалению, я не могу поделиться документом, потому что он размещен на моей рабочей платформе, и я не могу поделиться им с publi c.

Вот с чем я работаю - по сути, я хочу иметь несколько кнопок «Согласен» с функцией, представляющей только эту строку.

Это код, который я использовал:

function increment() {
  SpreadsheetApp
    .getActiveSheet()
    .getRange('C5')
    .setValue(SpreadsheetApp.getActiveSheet().getRange('C5').getValue() + 1);
}

И код изменится на C6, C7 и т.д. c. для каждой строки.

Я попытался добавить каждый код приращения для каждой строки в appscript, и он будет учитываться только в последней строке. Я пробовал создавать отдельные коды приращения на разных вкладках, и он делает то же самое.

Пожалуйста, помогите. Я потратил часы на поиск ответа, но ничего не помогло! макет листа Google

1 Ответ

1 голос
/ 05 мая 2020

Разобрался!

Написав свою собственную функцию, я смог создать этот код, но изменить настраиваемое имя, чтобы оно соответствовало каждому номеру строки, и назначило каждой кнопке правильное кодовое имя, соответствующее этому номеру.

Здесь является копируемой версией Google Do c: https://docs.google.com/spreadsheets/d/12w_Rymf02Bnfi2dnHBiZjLuMV9YOkZ4qtHeSg7grYZc/edit?usp=sharing

И ссылка на веб-приложение для скрипта приложения, если оно по какой-то причине не передается с лист (я также связал его в листе) https://script.google.com/macros/s/AKfycbxE1mL5VKeEGosfS74yzzK2g1WZ6aOj2kdamcwkrIynVPAq38Q/exec

И вот мои фактические закодированные функции, которые применимы к этому листу, хотя его можно изменить для ваших индивидуальных нужд:

function vote5() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C5')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C5').getValue() + 1);
}
function vote6() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C6')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C6').getValue() + 1);
}
function vote7() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C7')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C7').getValue() + 1);
}
function vote8() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C8')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C8').getValue() + 1);
}
function vote9() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C9')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C9').getValue() + 1);
}
function vote10() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C10')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C10').getValue() + 1);
}
function vote11() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C11')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C11').getValue() + 1);
}
function vote12() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C12')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C12').getValue() + 1);
}
function vote13() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C13')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C13').getValue() + 1);
}
function vote14() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C14')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C14').getValue() + 1);
}
function vote15() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C15')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C15').getValue() + 1);
}
function vote16() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C16')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C16').getValue() + 1);
}
function vote17() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C17')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C17').getValue() + 1);
}
function vote18() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C18')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C18').getValue() + 1);
}
function vote19() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C19')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C19').getValue() + 1);
}
function vote20() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C20')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C20').getValue() + 1);
}
function vote21() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C21')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C21').getValue() + 1);
}
function vote22() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C22')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C22').getValue() + 1);
}
function vote23() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C23')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C23').getValue() + 1);
}
function vote24() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C24')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C24').getValue() + 1);
}
function vote25() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C25')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C25').getValue() + 1);
}
function vote26() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C26')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C26').getValue() + 1);
}
function vote27() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C27')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C27').getValue() + 1);
}
function vote28() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C28')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C28').getValue() + 1);
}
function vote29() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C29')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C29').getValue() + 1);
}
function vote30() {
  SpreadsheetApp
  .getActiveSheet()
  .getRange('C30')
  .setValue(SpreadsheetApp.getActiveSheet().getRange('C30').getValue() + 1);
}
...