【问题标题】:How do I lookup a particular cell in another worksheet dependent on the value of a cell?如何根据单元格的值在另一个工作表中查找特定单元格?
【发布时间】:2011-07-13 23:57:24
【问题描述】:

我正在尝试读取一个名为操作的表,看起来像这样

"id";"name";
"1";"LASER CUTTING";
"2";"DEBURR";
"3";"MACHINING";
"4";"BENDING";
"5";"PEM";
"6";"WELDING";
"7";"PAINT PREPARATION";
"8";"PAINTING";
"9";"SILKSCREEN PREPARATION";
"10";"SILKSCREEN";
"11";"ASSEMBLY - PACKAGING";
"12";"LASER PREP";

我想在工作表中有一个列,该列根据另一个工作表中的 operation_id 列的值获取适当的名称。 如何根据单元格的值在另一个工作表中查找特定单元格?

例子

userid, operation_id, operation_name
bob, 3, MACHINING

【问题讨论】:

  • 问题:就我自己的经验而言,您不需要至少一个值列(要聚合)用于数据透视表吗?查看您在此处发布的数据,看起来任何一列都不适合聚合。
  • 顺便说一句——有时你可以通过将函数更改为 min() 或 max() 等来“聚合”字符串,而不是像 sum、average 等普通的数学函数。一个黑客,但只要你的字符串列中没有重复项,它就可以工作。
  • 是的,我根本不想聚合,我基本上只是想用它来查找我想要的值。
  • 看起来您对 SQL 没有任何问题,而且您的整个问题都涉及在将数据加载到工作表后如何访问数据。对吗?
  • 是的,我认为你是对的。查找是我一直在寻找的,我要编辑我的标签。

标签: excel lookup worksheet-function


【解决方案1】:

你应该看看 DGET(database,field,criteria) 函数,参考here

或者你可以使用这个工作表函数:

VLOOKUP(cellWithID, Sheet2!A1:B13, 2, FALSE)

其中 cellWithID 是具有您要使用的 ID 值的单元格。

【讨论】:

  • 我每个月都会在工作中做这种事情。我使用 Vlookup。它就是为了做这种事情而设计的。 (我假设您想知道如何在 Excel 中执行此操作,因为这是您的标签之一)
【解决方案2】:

也许 Lookup() 函数更适合您。 http://www.techonthenet.com/excel/formulas/lookup.php

【讨论】:

    【解决方案3】:

    基于此:“我真正想做的只是查找操作的名称,而不必每次都运行 sql 查询或在每个单元格中都有一个丑陋的巨大 if 语句。”

    我想这里让我感到困惑的是为什么你不只使用连接。您可以随时加入该表作为对您的 sql 语句的查找;

    select operations.name, tableA.* from tableA 
    

    对operations.id = tableA.operationid的左外连接操作

    如果你愿意,你可以实现它;不建议。子查询通常是坏消息。不过,

    create function dbo.LookupOperationName
    (
    @id int
    )
    returns varchar(100)
    as
    declare @returnvalue varchar(100)
    select @returnvalue = name from Operations where id = @id
    
    return @returnValue
    

    会成功的。那么你可以:

     select tablea.*,LookupOperationName(operationid) from tablea
    

    同样,请记住,您的连接示例的性能要高得多。您还可以创建一个具有连接的视图,并使用该视图代替表......各种各样的东西。

    【讨论】:

    • 编辑了我的解释以更好地解释我在寻找什么。
    • 哎呀,我刚刚注意到你的问题在那里很出色。您可能正在寻找更多基于 excel 的解决方案……抱歉!我现在明白了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多