如果行中的其他单元格与值匹配,则将单元格从片材复制到另一个

时间:2015-02-18 12:57:06

标签: google-sheets copy google-sheets-query

我想要的是,只有当同一行(不同列)中的另一个单元格具有/具有Google表格中的特定值时,才能将单元格从一个工作表复制到另一个工作表。

理想情况下,我希望这是活的;如果我在第一张纸中添加一行并且标准匹配,则第二张纸也将更新。这是一个例子:

Sheet one

Column A | Column(s)…  | Column D
=================================
Hello    |             | Yes
World!   |             | Yes
Foo      |             | Maybe
Bar      |             |

Sheet two

Column A | Column(s)…  | Column D
=================================
Hello    |             |
World!   |             |
Foo      |             |
         |             |

因此,在此示例中,我的标准是,如果Column D中的行的单元格等于YesMaybe,则该行的单元格位于{{ 1}}被复制到第二张表中。

2 个答案:

答案 0 :(得分:2)

请尝试:

=query('Sheet one'!A:D,"Select A where D='Yes' or D='Maybe'") 

答案 1 :(得分:0)

在脚本编辑器中粘贴脚本以下(google工作表)并保存项目。然后尝试编辑sheet1的col D(值:'Yes'或'Maybe')并查看该行是否移动...如果需要,可以随意更改工作表名称...

function onEdit(e) {
var ss = e.source,
    sheet = ss.getActiveSheet();
if (sheet.getName() !== 'Sheet1' || e.range.columnStart !== 4 || e.value !== 'Yes' && e.value !== 'Maybe') return;
e.source.getSheetByName('Sheet2')
    .appendRow(e.range.offset(0, -3, 1, 4)
        .getValues()[0]);
sheet.deleteRow(e.range.rowStart);
}