Search 将单个单元格值与每个匹配的值列匹配返回这些行Google apps脚本
我有一个电子表格,有两张标签页。我试图运行一个宏,这样当用户在第二张工作表的B2中输入一个名称时,它将与第一张工作表B列中该名称的每个实例相匹配。然后,我需要复制匹配单元格行中出现的所有数据,并从单元格B3开始粘贴到第二张工作表中。 我使用VBA的经验有限,但没有使用JS/Google应用程序脚本的经验。任何关于如何写这篇文章的帮助都将不胜感激!这是我的第一张照片:Search 将单个单元格值与每个匹配的值列匹配返回这些行Google apps脚本,search,google-apps-script,match,copy-paste,multiple-instances,Search,Google Apps Script,Match,Copy Paste,Multiple Instances,我有一个电子表格,有两张标签页。我试图运行一个宏,这样当用户在第二张工作表的B2中输入一个名称时,它将与第一张工作表B列中该名称的每个实例相匹配。然后,我需要复制匹配单元格行中出现的所有数据,并从单元格B3开始粘贴到第二张工作表中。 我使用VBA的经验有限,但没有使用JS/Google应用程序脚本的经验。任何关于如何写这篇文章的帮助都将不胜感激!这是我的第一张照片: function onSearch() { // raw data sheet var original = Spre
function onSearch() {
// raw data sheet
var original = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Form Responses 2");
// search for student sheet
var filtered = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Student Progress Search");
// retrieving the values in the raw data array of names
var searchColumn = 2;
var lr = original.getLastRow();
var searchRange = original.getRange(2,searchColumn, lr, 1).getValues();
// retrieving the name submitted on search
var inputName = filtered.getRange(2, 2).getValue();
// loop through all the names in the raw data and identify any matches to the search name
for (var i = 0; i < lr; i++){
var dataValue = searchRange[i];
var r = dataValue.getRow();
var line = [[r]];
var paste = filtered.getRange(3, 3);
// if the data is a match, return the value of that cell in the searched sheet
if (dataValue == inputName){ return paste.setValues(line);
}
}
}
函数onSearch(){
//原始数据表
var original=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“表单响应2”);
//搜寻学生资料
var filtered=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“学生进度搜索”);
//检索名称的原始数据数组中的值
var-searchColumn=2;
var lr=original.getLastRow();
var searchRange=original.getRange(2,searchColumn,lr,1).getValues();
//正在检索搜索时提交的名称
var inputName=filtered.getRange(2,2).getValue();
//循环遍历原始数据中的所有名称,并确定与搜索名称的任何匹配项
对于(变量i=0;i
不确定内置查询功能是否适合您。这正是您想要的:
=QUERY(Sheet1!B:B,"select B where LOWER(B) like LOWER('%" &B2& "%')")
例如,如果用户输入'joe',无论大小写,函数都将匹配包含'joe'的任何条目。您确定需要宏吗?听起来有点过分了。这可以是带有内置查询功能的一行。我可以将其连接到按钮吗?我打算用一个“搜索”按钮来运行宏。嗯,你一定可以编写脚本,将这个公式添加到目标范围(range.setFormula(formula)),并将它连接到一个按钮。这能解决问题吗?如果是,请考虑将原问题标记为已解决。