2011-11-10 151 views

回答

0

您正在請求的功能目前不存在。將Google表單與電子表格連接起來的功能請求將是保持兩者同步的最佳選擇。

總是有使用URL參數創建形式,這裏列出的選項:https://docs.google.com/support/bin/answer.py?hl=en&answer=160000

+2

看到這個[answer](http://stackoverflow.com/a/17520828/1595451) –

21

這是可能的。在電子表格中編寫您的擁有腳本以更新您的表單。如果您不熟悉編寫腳本,您可能會在Google腳本庫中找到某人。讓我們看看我的腳本的示例。該腳本將更新兩個列表框。

function updateForm(){ 
    // a way to get the items from the form 
    var form = FormApp.openById("<your form id>"); 
    var agentList = form.getItemById(<your item id>).asListItem(); 
    var hotelList = form.getItemById(<your item id>).asListItem(); 


    var ss = SpreadsheetApp.getActive(); 
    var agents = ss.getSheetByName("Agents"); 
    var hotels = ss.getSheetByName("Hotels"); 

    // get the values in the first column accept header row 1 
    var agentValues = agents.getRange(2, 1, agents.getMaxRows() - 1).getValues(); 
    var hotelValues = hotels.getRange(2, 1, hotels.getMaxRows() - 1).getValues(); 

    var agentNames = []; 
    var hotelNames = []; 

    // convert 2D to 1D array and ignore empty cells 
    for(var i = 0; i < agentValues.length; i++) { 
    if(agentValues[i][0] != "") { 
     agentNames[i] = agentValues[i][0]; 
    } 
    } 

    for(var i = 0; i < hotelValues.length; i++) { 
    if(hotelValues[i][0] != "") { 
     hotelNames[i] = hotelValues[i][0]; 
    } 
    } 

    // populate the list 
    agentList.setChoiceValues(agentNames); 
    hotelList.setChoiceValues(hotelNames); 
} 

您還可以將此功能鏈接到電子表格編輯/更改事件以使列表自動更新。

+1

所以我真的不知道我應該在哪裏複製這個腳本,爲了填充我的Google窗體。並且表單ID如何?謝謝。 – Benjamin

+1

@monchai如何從表單中獲取物品ID?而不是<您的物品ID> – galgo

+0

做一些研究我認爲@monchai正在接受應用程序腳本https://developers.google.com/apps-script/quickstart/docs – rvazquezglez

相關問題