Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
比较Excel 2010中的文本_Excel_Text_Excel Formula - Fatal编程技术网

比较Excel 2010中的文本

比较Excel 2010中的文本,excel,text,excel-formula,Excel,Text,Excel Formula,我正在使用Excel 2010。问题是,我需要根据员工姓名提取时间表中的小时数。我使用的是这样的东西:=SUMIFS(……时间表!$D:$D,“*Tom*”)。这是可行的,但我希望它能用于单元格位置,例如(…时间表!$D:$D,Q1)。关于将Q1转换为“Tom”的任何建议。谢谢我经常使用Excel中的=SUMPRODUCT()函数创建汇总表(例如TOM的工时)。如果您有一个记录了所有小时数的表,该表类似于以下内容: G H 1 Name hours 2 Tom 5 3 Mike 3

我正在使用Excel 2010。问题是,我需要根据员工姓名提取时间表中的小时数。我使用的是这样的东西:
=SUMIFS(……时间表!$D:$D,“*Tom*”)
。这是可行的,但我希望它能用于单元格位置,例如
(…时间表!$D:$D,Q1)
。关于将Q1转换为“Tom”的任何建议。谢谢

我经常使用Excel中的
=SUMPRODUCT()
函数创建汇总表(例如TOM的工时)。如果您有一个记录了所有小时数的表,该表类似于以下内容:

  G    H
1 Name hours
2 Tom  5
3 Mike 3
4 Tom  3
然后,您可以创建如下表:

  1     2
A Tom   8
B Mike  3
在第二列中,输入公式:

=sumproduct(--(A1=$G$2:$G$4),$H$2:$H$4)

实际上,如果两个表中的行匹配并与第二列(第一个表)相乘,则返回1,然后返回所有内容的总和。如果没有匹配项,则返回0。在这种情况下,它乘以0*5=0

从表面上看,你可以在Q1中键入“Tom”——不加引号,但也许我遗漏了一些东西。使用双一元运算符时,+1。您可以考虑将公式稍加更改为<代码> = SAMPARY((A1= $G 2:$G 4)*($H $ 2:$H 4))< /C> >,在这种情况下,您不再需要使用一元操作符;此外,在使用SUMPRODUCT()创建更复杂的公式时,它为您提供了更大的灵活性。