Wiem, że to forum OpenOffice ale próbuję znaleźć odpowiedź w różnych miejscach, jeśli admin uzna za niestosowne pytanie, proszę skasować post

O ile makra w OpenOffice jakoś mi wychodzą to w google sheet poległem.
Potrzebuję zrobić arkusz dostępny do edycji dla każdego z linkiem, ale z wbudowanym mechanizmem że kto pierwszy wypełni jakąś niepustą komórkę, ten lepszy. Czyli jak ktoś coś w pisze w komórce to zostanie zablokowana do edycji. Puste komórki mają być dostępne do edycji aż ktoś inny coś wpisze
Ponieważ zupełnie czuję skryptów google poprosiłem o pomoc ChatGPT i ten mi podał następujący kod:
Kod: Zaznacz cały
function onEdit() {
var sheet = e.source.getActiveSheet(); // Aktywny arkusz
var range = e.range; // Zmodyfikowana komórka
var value = e.value; // Nowa wartość wprowadzonej komórki
// Sprawdź, czy wprowadzono dane (nie pusty tekst)
if (value !== "" && value !=="") {
//if (value !== null && value !== "") {
// Ustaw komórkę jako tylko do odczytu
var protection = sheet.getRange(range.getRow(), range.getColumn()).protect();
protection.setDescription("Komórka zablokowana po edycji.");
}
}
Żeby mieć pewność, że przy każdej edycji komórki funkcja startuje dodałem na początku krótki kod
Kod: Zaznacz cały
var ui = SpreadsheetApp.getUi(); // Pobranie interfejsu użytkownika
ui.alert("Uwaga", "Test otwarcia.", ui.ButtonSet.OK);
Podpowiedzcie proszę o co w tym chodzi? Ja już nic z tego nie rozumiem


