我的Excel公式需要一些帮助。我试图根据这些行中的值选择特定的行。
让我们说这些是我的价值观:
╔══════════╦═════════╦══════╗
║ Data ║ Month ║ Name ║
╠══════════╬═════════╬══════╣
║ Value 1 ║ january ║ mark ║
║ Value 2 ║ january ║ mark ║
║ Value 3 ║ january ║ rick ║
║ Value 4 ║ january ║ rick ║
║ Value 5 ║ march ║ mark ║
║ Value 6 ║ march ║ mark ║
║ Value 7 ║ march ║ rick ║
║ Value 8 ║ march ║ rick ║
║ Value 9 ║ august ║ mark ║
║ Value 10 ║ august ║ rick ║
╚══════════╩═════════╩══════╝
A1 = 1月的值 A2中的值=标记
我想列出月份为A1且名称为A2的所有行。 这应该是我的结果:
║ Value 1 ║ january ║ mark ║
║ Value 2 ║ january ║ mark ║
我尝试过将INDEX与IF结合使用,但没有成功。我正在寻找VBA解决方案或公式,无论什么是最好的。
答案 0 :(得分:0)
我假设:
'数据'在Sheet1!A1中,'月'在Sheet1!B1中,'Name'在Sheet1!C1。
在Sheet2上!A1是要过滤掉的'月'的值,在Sheet2上!A1是要过滤掉的'名称'的值。
在Sheet1!D1中创建一个新列(在'Name'旁边)并给它一个标题,例如。 '标签'。在第一行中,D1(在'Tag'下)写下公式
<强> = IF(AND(B2 = Sheet2的$ A $ 1,C2 = Sheet 2中$ A $ 2),MAX($ d $ 1:!D1)+1 “”)强>
将上述公式拉(复制)到你桌子的最后一行。
在Sheet2上,复制表格标题,这次是在B1,C1和D1中(因为A1和A2已经有你的过滤器值)。
//现在一切都是Sheet2
在B2中写下面的公式:
<强> = IFERROR(INDEX(Sheet 1中!A:A,MATCH(ROWS($ B $ 2:B2),工作表Sheet $ d:$ d,0)), “”)强>
将此公式粘贴到新过滤器表行中。
更改Sheet2!A1(月份)和Sheet2!A2(名称)中的值,以测试是否正在过滤正确的行。