Мне удалось достичь своих целей с помощью VBA и Excel, но я хотел бы перейти на электронную таблицу Google по определенным причинам.
Я пытаюсь воспроизвести код, который отлично работает в VBA.
Это просто, у меня есть лист с банком вопросов в столбце A, и мне нужен макрос, который может выбрать 1 случайный вопрос и скопировать его на второй лист.
Мне сложно понять, как я могу получить доступ к случайной ячейке, скопировать ее и вставить на второй лист. Было бы полезно какое-то простое объяснение, так как у меня очень мало или вообще нет знаний о программировании или javascript.
function test() {
var ss = SpreadsheetApp.openById("sheetID");
//Say I have 10 questions in the BANKSHEET, for instance
var rQuestion = Math.floor(Math.random()*10+1);
//What goes in A1? So that I can access the range randomly according to rQuestion value.
var inputRange = ss.getSheetByName("BANKSHEET").getRange("A1");
var inputValues = inputRange.getValues();
var outputRange = ss.getSheetByName("QUIZZ").getRange("A1").setValues(inputValues);



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Как насчет этой модификации? Я думаю, что есть несколько вариантов выхода из вашей ситуации. Так что считайте это одним из них.
function test() {
var ss = SpreadsheetApp.openById("sheetID");
// Retrieve randomly a value from sheet of BANKSHEET
var sheet = ss.getSheetByName("BANKSHEET");
var src = sheet.getRange("A" + (1 + Math.floor(Math.random() * sheet.getLastRow())));
// Put the value to "A1" at sheet of QUIZZ
var dst = ss.getSheetByName("QUIZZ").getRange("A1");
src.copyTo(dst);
}
Если я неправильно понял ваш вопрос, извините.
Мой ответ показал вам результат, которого вы хотите? Не могли бы вы рассказать мне об этом? Если у вас еще есть вопросы по моему ответу, не стесняйтесь сообщить мне. Хочу учиться решать ваши вопросы.