2017-02-06 23 views
0

在谷歌電子表格(不是Excel的!),尋找一個值的電子表格搜索,然後去價值

我有兩張。一個標題爲「公司」,一個標題爲「聯繫人」 「公司」表只是A列中公司名稱的列表,沒有別的。 「聯繫人」表是聯繫人詳細信息的電子表格,但他們工作的公司也位於A列中。

我想弄清楚如何編寫一個腳本,將着眼於活動單元格的值(在「公司」表),然後在「聯繫人」表的公司列搜索該值,然後去第二張紙上的那個單元格,並使其成爲活動單元格。

我有一些想通了;我在查找「聯繫人」工作表A列中匹配值時遇到了最大麻煩,然後轉到該值以使其成爲活動單元格

任何人都可以幫助我嗎?

+0

向我們展示您到目前爲止的代碼,並且我們可能會幫助您。 –

+0

我現在基本上沒有任何需要幫助的部分。 使代碼搜索與活動單元格相同的值,然後轉到第二個表格中具有相同值的行 – SJpark

+0

您的最終目標是什麼?你想在公司的聯繫表中尋找一定的價值嗎? –

回答

1

將以下代碼粘貼到腳本編輯器中,保存並刷新電子表格。在'公司'表單中點擊您要搜索的單元格,然後點擊'自定義功能'菜單和'搜索公司'。

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var ui = SpreadsheetApp.getUi(); 

function onOpen(e) { 
    ui.createMenu('Custom Functions') 
    .addItem('Search for company', 'myFunction') 
    .addToUi() 
} 

function myFunction() { 
    var searchSheet = ss.getSheetByName('Companies'); 
    var targetSheet = ss.getSheetByName('Contacts'); 

    var searchTerm = searchSheet.getActiveCell().getValue(); 

    var searchRange = targetSheet.getRange(1, 1, targetSheet.getLastRow()).getValues(); 

    for (var i = 0; i < searchRange.length; i++) { 
     if (searchTerm == searchRange[i][0]) { 
      break; 
     } 
    } 

    var row = targetSheet.getRange(i + 1, 1); 

    targetSheet.setActiveRange(row); 

} 
相關問題