标签: worksheet-function

如何使用Excel COUNTIF计算通配符?

如何计算包含字符串"A*"的单元格数量 - 而不将星形视为通配符?

excel worksheet-function countif

3
推荐指数
1
解决办法
6784
查看次数

当一个单元中的一个函数"解析"多次包含对同一函数的相同调用时,excel是多么聪明

考虑一下:Cell C1有一个多次调用另一个函数的公式:

例如 =ExcelFuntionA(ExcelFunctionCallB(1), ExcelFunctionCallB(1)-1, ExcelFunctionCallB(1)-2, ExcelFunctionCallB(1)*3)

请注意,传递给的参数ExcelFunctionCallB每次都具有相同的值.

如果ExcelFunctionCallB(..)是涉及重要处理的函数,如果ExcelFunctionCallB(..)在花药细胞中发现结果并且上述公式被改变为参考该细胞4次,那么将更好地处理该公式.

例如

A2有公式 ExcelFunctionCallB(..) C1然后读 =ExcelFuntionA(A2, A2-1, A2-2, A2*3)

我想知道excel是多么聪明!

  1. 可以看到呼叫是相同的,只处理一次对该功能的调用吗?

  2. 对于数组公式以及普通函数公式来说,它是否足够智能?

  3. 如果你调用一个用VBA编写的函数,它是如何工作的?
    承诺VBA函数可以直接引用未作为参数传递的单元格(我知道这很顽皮,但它发生了,即使与它一起使用的参数,它也可能返回不同的值的可能性很小是相同的.)

从上面开始,有没有办法告诉代码VBA函数不能直接访问任何excel单元格?(有点像application.volatile我想象的那样)

一个更现实的例子:我实际上一直在尝试这样的公式:

=MID($A2, FIND("@",SUBSTITUTE("#" & $A2 & "#","#","@",B$1)), FIND("@",SUBSTITUTE("#" & $A2 & "#","#","@",B$1+1)) - FIND("@",SUBSTITUTE("#" & $A2 & "#","#","@",B$1)) - 1 )

在SO 24182334/splitting-text-columns的未批准答案之一中提出了很好的记录

请注意,此公式使用文本FIND("@",SUBSTITUTE("#" & $A2 & "#","#","@",B$1))三次.

[PS.我知道有关VBA中的拆分和文本到列菜单选项.]

excel vba worksheet-function excel-vba

3
推荐指数
1
解决办法
140
查看次数

如何使用VLOOKUP结果作为COUNTIF标准

我希望能够确定一个人的特定ID(例如#123)出现在单独列(例如column C)给出名称(例如Bob)的次数.

我有:

  1. 让A列由几个名称组成.(Bob)
  2. 让B列包含与此人姓名相关的ID.(#123)
  3. 让C列由相同的ID组成,但它可能包含ID的重复(可能有三个#123)

ID与每个人的姓名并排.

如何使用a的结果VLOOKUP作为COUNTIF函数的标准(第二个参数)?

如果我VLOOKUP单独使用它会返回我正在尝试计算的正确值.=VLOOKUP(Bob, column A:column B, 2, FALSE)将返回#123

如果我COUNTIF单独使用它也会返回正确的计数值.=COUNTIF(column C, #123) 将返回3

我试过了,=COUNTIF(column C, VLOOKUP(Bob, column A:column B, 2, FALSE))但它回来了0.

我已经尝试将标准引用COUNTIF到具有VLOOKUP公式的单独单元格,但它仍然返回0.

因此,当我将两者结合在一起时似乎停止工作.问题可能是什么,可能是另一种选择?

excel worksheet-function excel-formula countif vlookup

3
推荐指数
1
解决办法
8万
查看次数

如何使用 Excel 对来自不同范围的数字进行分类/分类?

我想将[0:15] 中的数字分为5类:A, B, C, D, E, F

规则:

0-1: Class A
2-4: Class B
5-7: Class C
8-10: Class D
11-13: Class E
14-15: Class F
Run Code Online (Sandbox Code Playgroud)

说明:如果数字在[0:1]范围内,那么它将被归类为A;如果一个数字在[2:4]类是B,依此类推。


示例输出:

在此处输入图片说明


我知道它可以用 multiple 来完成IFs,但我无法弄清楚公式的样子,特别是区分不同的数字范围。

excel worksheet-function excel-formula multiple-conditions vlookup

3
推荐指数
1
解决办法
2万
查看次数

Excel VBA - 查找范围中的最高值和后续值

我有下面的代码,它应该找到一个范围内的第1,第2,第3和第4个最高值.

它目前是非常基础的,我有它在MsgBox中提供值,所以我可以确认它是否正常工作.

但是,它只能找到最高和第二高的值.第三个和第四个值返回0.我缺少什么?

Sub Macro1()

Dim rng As Range, cell As Range
Dim firstVal As Double, secondVal As Double, thirdVal As Double, fourthVal As Double

Set rng = [C4:C16]

For Each cell In rng
    If cell.Value > firstVal Then firstVal = cell.Value
    If cell.Value > secondVal And cell.Value < firstVal Then secondVal = 
    cell.Value
    If cell.Value > thirdVal And cell.Value < secondVal Then thirdVal = 
    cell.Value
    If cell.Value > fourthVal And cell.Value < thirdVal Then fourthVal = 
    cell.Value
Next cell …
Run Code Online (Sandbox Code Playgroud)

excel vba worksheet-function

3
推荐指数
1
解决办法
4960
查看次数

Excel FILTER() 对于空白单元格返回 0

我怀疑以前有人问过这个问题,但我找不到。

FILTER()即使指定了返回字符串,通常也会为空白行返回 0。

使用时filter()我经常得到空单元格的 0 返回值。假设 A 列中有 6 行数据:

abc
xyz
abc

xyz
abc
Run Code Online (Sandbox Code Playgroud)

如果我使用

FILTER(A10:A15, A10:A15 <> "xyz", "")
Run Code Online (Sandbox Code Playgroud)

我得到以下信息(有时):

abc
abc
  0
abc
Run Code Online (Sandbox Code Playgroud)

这似乎有些难以预料。在我不想要的地方出现 0 是一个问题,需要额外的逻辑或过滤。这是一个已知的问题?除了明确过滤掉空白单元格之外,还有其他方法可以解决这个问题吗?

这似乎可以消除空单元格返回 0 的情况:

FILTER(A10:A15, (A10:A15 <> "xyz") * (A10:A15 <> ""), "")
Run Code Online (Sandbox Code Playgroud)

返回的是:

abc
abc
abc
Run Code Online (Sandbox Code Playgroud)

我可以接受这个解决方案,但它应该是不必要的。我最后还向人们解释了为什么我一遍又一遍地过滤空单元格。

顺便说一句,过滤掉 0 不起作用。FILTER()在读取单元格时似乎将单元格视为空白字符串,但在输出结果时则不然。

FILTER(A10:A15, (A10:A15 <> "xyz") * (A10:A15 <> 0), "")
Run Code Online (Sandbox Code Playgroud)

这将返回带有 0 的原始结果。

如果没有更好的解决办法,有解释吗?

excel filter worksheet-function is-empty excel-365

3
推荐指数
2
解决办法
2万
查看次数

如何删除Excel单元格中的特定单词?

如何删除Excel中另一个单元格中一个单元格的列中的特定单词.

示例:if

  • A1 = *1603 Ad street New York*,
  • B1 = *New York*
  • 然后在C1我想= *1603 Ad street*

excel excel-2007 worksheet-function

2
推荐指数
1
解决办法
8万
查看次数

您如何引用另一个工作表中的数据表列?

Microsoft Excel 2010-
我有两个工作表Sheet1Sheet2
两个工作表上都有数据表,涵盖了不同类型的数据-如下所示。

<Worksheet "Sheet1">
    <DataTable "Table1">
        <Columns>
            <Column "T1Col1" />
            <Column "T1Col2" />
        </Columns
    </DataTable>
</Worksheet>

<Worksheet "Sheet2">
    <DataTable "Table2">
        <Columns>
            <Column "T2Col1" />
            <Column "T2Col2" />
        </Columns
    </DataTable>
</Worksheet>
Run Code Online (Sandbox Code Playgroud)

当前,T2Col2中的每个单元格包含以下函数:

=COUNTIF('Sheet1'!B:B, [T2Col1])
Run Code Online (Sandbox Code Playgroud)

我想用[T1Col2]的方括号内的引用替换“ B:B”,但是我不确定如何在单独的表和工作表之间完成此操作。

excel worksheet worksheet-function excel-formula excel-2010

2
推荐指数
1
解决办法
2万
查看次数

在Excel中查找最近的坐标集

有两个表,每个表都有一个坐标对:经度和纬度,十进制度(即37.23222,-121,3433).如何将表A与表B中最近的坐标对匹配?

excel worksheet-function

2
推荐指数
1
解决办法
2万
查看次数

Google表格,如果声明多个条件

尝试制作一个if语句,该语句将根据单元格的内容返回4个结果

如果单元格为“是”,“否”,“ NA”,“未知”,则分别返回0、1、2、3。

我可以使用 If(A1="Yes", 0,1) 但不确定如何处理其他情况

if-statement worksheet-function google-sheets

2
推荐指数
1
解决办法
3万
查看次数