Excel 索引 + if + 间接
Excel Index + if + indirect
我正在帮助一位朋友完成一项工作任务,他被交给了他,但无法弄清楚最后一部分。我们得到一个矩阵,其中包含以下布局中的工作人员/用户列表:
Location | First Name | Last Name | Property 1 | Property 2 | Property 3 | .. | Property N
Frankfurt | Adam | Schmidt | X | | X | .. | X,
即属性为布尔值形式(X 表示 'Yes',或为空表示 'No')。
任务是根据 Location + 1 属性 搜索所有用户,我们可以从 N 个属性中 select,即我们在某处有一个包含所有属性 1 的下拉菜单,2,..,N 我们可以 select 恰好 1 个属性。
输出格式应为:位置 |名字 |姓氏。
所以,我的想法是用属性 我们 select 的地址,然后我们使用 INDIRECT 函数将其从文本值转换为单元格引用。
举个例子,如果我们在下拉菜单中select 属性 1(位于D列),ADDRESS函数将return $D$1作为起始字段,$D$100 作为结束字段。这些字段然后在主(长)搜索函数内的 INDIRECT 函数内使用。
我从 internet 上的其他帖子中看到可以使用 SUM(INDIRECT(cell with starting cell defined&":"&cell with ending cell defined)), 所以我尝试了类似的东西在我的函数中,但它似乎不起作用。
这是 excel 文件的公式和布局的图片。
您应该将 sheet 分为 3 个部分:
- 数据集
- 条件
- 结果集
按照步骤为搜索创建按钮操作。
- 导航到 'Developer' 选项卡。
- 单击“插入”>“按钮”。
- 画一个按钮。将显示 'Assign Macro' 对话框。
- 点击录制。
- 输入宏名称 'SearchRecords' 并单击“确定”。
- 单击任何空单元格。导航至 'Data' 选项卡。
- 在 'Sort & Filter' 部分点击 'Advanced'。
- Select 'Copy to another location' 单选按钮并根据数据集和条件位置输入范围。
- 点击确定。
- 导航到 'Developer' 选项卡并单击 'Stop Recording'。
- 将按钮重命名为 'Search'。
现在您可以更新搜索条件并单击搜索按钮以更新相邻位置的结果。
一种更简单的方法是按如下方式组织输入数据:
这个数据集是 Pivot 友好的。然后,您可以创建数据集的数据透视表 Table。将位置和 属性 字段移动到报表过滤器部分,将全名移动到行标签部分,将位置移动到值部分。
请注意,全名只是 'First Name' 和 'Last Name' 的串联值。
我正在帮助一位朋友完成一项工作任务,他被交给了他,但无法弄清楚最后一部分。我们得到一个矩阵,其中包含以下布局中的工作人员/用户列表:
Location | First Name | Last Name | Property 1 | Property 2 | Property 3 | .. | Property N
Frankfurt | Adam | Schmidt | X | | X | .. | X,
即属性为布尔值形式(X 表示 'Yes',或为空表示 'No')。
任务是根据 Location + 1 属性 搜索所有用户,我们可以从 N 个属性中 select,即我们在某处有一个包含所有属性 1 的下拉菜单,2,..,N 我们可以 select 恰好 1 个属性。
输出格式应为:位置 |名字 |姓氏。
所以,我的想法是用属性 我们 select 的地址,然后我们使用 INDIRECT 函数将其从文本值转换为单元格引用。
举个例子,如果我们在下拉菜单中select 属性 1(位于D列),ADDRESS函数将return $D$1作为起始字段,$D$100 作为结束字段。这些字段然后在主(长)搜索函数内的 INDIRECT 函数内使用。
我从 internet 上的其他帖子中看到可以使用 SUM(INDIRECT(cell with starting cell defined&":"&cell with ending cell defined)), 所以我尝试了类似的东西在我的函数中,但它似乎不起作用。
这是 excel 文件的公式和布局的图片。
您应该将 sheet 分为 3 个部分:
- 数据集
- 条件
- 结果集
按照步骤为搜索创建按钮操作。
- 导航到 'Developer' 选项卡。
- 单击“插入”>“按钮”。
- 画一个按钮。将显示 'Assign Macro' 对话框。
- 点击录制。
- 输入宏名称 'SearchRecords' 并单击“确定”。
- 单击任何空单元格。导航至 'Data' 选项卡。
- 在 'Sort & Filter' 部分点击 'Advanced'。
- Select 'Copy to another location' 单选按钮并根据数据集和条件位置输入范围。
- 点击确定。
- 导航到 'Developer' 选项卡并单击 'Stop Recording'。
- 将按钮重命名为 'Search'。
现在您可以更新搜索条件并单击搜索按钮以更新相邻位置的结果。
一种更简单的方法是按如下方式组织输入数据:
这个数据集是 Pivot 友好的。然后,您可以创建数据集的数据透视表 Table。将位置和 属性 字段移动到报表过滤器部分,将全名移动到行标签部分,将位置移动到值部分。
请注意,全名只是 'First Name' 和 'Last Name' 的串联值。