Формула для создания последовательных идентификаторов auto-gen в Google Sheets - PullRequest
0 голосов
/ 30 января 2020

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

У меня он работает, куда он будет импортировать данные из формы Google, но у меня возникли проблемы с идентификатором gen.

=ArrayFormula(if(ISBLANK(B2:B), "", CONCATENATE("TMB",ROW(J6:J7))))

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

Идентификатором должна быть строка «TMB», за которой следует число из четырех ди git. Он также должен быть расширяемым для учета будущего инвентаря или даже другой, более эффективной системы, если у вас есть лучшая идея (например, hex, alphanum, et c.) Спасибо !!!

1 Ответ

0 голосов
/ 31 января 2020

Совсем не сложно - ваше представление о формулах массива интересно, но если это идентификатор продукта, я думаю, что было бы слишком легко испортить эту формулу таблицы и изменить все идентификаторы на листе, что, вероятно, Будь плохим. На самом деле должно быть значение c для идентификаторов продуктов

. Самый простой способ, которым я делал что-то подобное в прошлом, - это go к электронной таблице, в которую вы получаете отправку формы, и нажмите на Сервис -> Редактор скриптов

Создайте следующие функции:

function formsubmit(e) {
  var arrayvalues = e.values
  arrayvalues.unshift(productcode());

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  ss.appendRow(arrayvalues);
}

function productcode() {


var lastcode = parseInt(PropertiesService.getScriptProperties().getProperty('lastcode'));
var productcode = lastcode + 1;
PropertiesService.setProperty('lastcode',productcode)
return "TMB" + productcode
}

function setInitialCode() {
//Use this to set the starting integer value for the product Code

PropertiesService.setProperty('lastcode',ENTER YOUR STARTING INTEGER IN THIS PLACE)
}

Затем в редакторе скриптов, go до Edit -> Current Project's Triggers, добавьте триггер и выберите функцию Formubmit () и выберите триггер «при отправке формы».

Это должно по крайней мере приблизить вас к решению, которое работает с небольшими изменениями.

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