2015-03-30 3 views
1

Вот что я пытаюсь сделать. У меня есть список, который заполняет выпадающий список, созданный при проверке данных. Затем я запрашиваю данные для заполнения второго списка, основываясь на первом выпадающем значении. Все работает, за исключением того, что я хотел бы установить первое значение во втором падении вниз как значение по умолчанию. Другими словами, если я изменил значение в первой капли вниз, моя вторая выпадающая дата теперь показывает ошибку, пока я не выберу выпадающее меню и не измените значение на правильное значение. Я хотел бы установить его на первое правильное значение, когда первый снимок будет изменен. Моя причина в том, что я не хочу, чтобы кто-то забыл изменить второе падение и получить значение, которое даже не в диапазоне.Как установить значение выпадающего списка по умолчанию из другого выпадающего списка в листах?

Пожалуйста, помогите, я новичок в этом.

благодаря

https://docs.google.com/spreadsheets/d/1U2_0Ku1bCLfDh_v2XyE9aQMSfdYmlVfX_8SKmQay48g/edit?usp=sharing

Вот то, что я до сих пор. Он работает, за исключением того, что отредактирован лист, значение сбрасывается. Я только хочу, чтобы он сбросился, когда Cell A2 изменится.

function onEdit() { 
    var ss = SpreadsheetApp.getActive() 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    // IF(cellContent has changed) then clear B2 
    // else do nothing. 
    sheet.getRange('B2').clearContent(); 
    var value = sheet.getRange('H2').getValue(); 
    sheet.getRange('B2').setValue(value); 
} 
+0

Вы пытаетесь достичь этого в сценарии приложений. Если да, отправьте код, который вы попробовали. – KRR

+0

Я пытаюсь завершить это любым способом. Я не уверен, как это можно сделать. Любые указатели помогут. –

ответ

2

Я понял, и это, кажется, работает просто отлично.

function onEdit() { 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var cell = sheet.getActiveCell(); 
    var cellR = cell.getRow(); 
    var cellC = cell.getColumn(); 
    var cellValue = cell.getValue(); 
    var active_spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 
    var value = active_spreadsheet.getRange('H2').getValue(); 
    if (cellR == 2 && cellC == 1) { 
    sheet.getRange('B2').clearContent(); 
    sheet.getRange('B2').setValue(value); 
    } 
} 
+0

благодарит кучу за эту проблему и решение. – urwaCFC

Смежные вопросы