Tag: 数组公式

如何在Excel工作表中循环使用FormulaArrays

Excel 2010.我需要找出FormulaArrays在表单中的位置。 特别是我需要得到他们的地址。 我不知道一个给定的(1×1)单元格是“ArrayArray”的一部分,而是知道FormulaArray“blocks”所在的位置。 例如,如果在A1:B2中input了一个公式数组,我想要得到公式数组区域超出范围A1:B2的信息,而不是知道单个单元格A1,A2,B1,B2是“一个“公式arrays”。 这可能吗?

sumproduct来总计天数

在电子表格中,我有两列,第一个 – 打开date,第二个dateclosures。 我想要做的是总和文件没有closures的天数。 使用以下公式,我可以计算仍然打开的文件数量; =COUNTIFS(Data!L5:L6000,">0",Data!M5:M6000,"") 要么 =SUMPRODUCT(–(Data!L5:L6000>0),(–(Data!M5:M6000=""))) 有没有办法扩大其中的任何一个,以返回从今天开始的天数的总和 ? 这可以作为一个数组公式可能吗? 谢谢

数组公式基础,而不是嵌套的if-else

我已经search了数组公式的基本问题,但我无法弄清楚数组公式的一些基本问题。 下表列出了产品的批量折扣的价格和各种截止值。 海事组织像一个公式,{= IF(A2'<'Cutoff,A2 * PPVM)} 其中cutoff是指所有的价值和“价格”是指价格点应该做的伎俩。 我不想做IFS或IF-ELSE,因为我可能想在稍后添加一行/删除一行。 基本上,如果我有5000个产品,价格将是5000 * 22.5,依此类推。 任何人都可以提出可用于此数组公式的基本结构?

如何input数组公式

数组公式是使用Ctrl + Shift + Enter在Excel中input的公式。 使用Excel API,当我读取一个数组公式( Range.formulas属性)时,我得到类似[["{=SUM(IF(A1:A10>50,1))}"]] 。 当我尝试将此公式写回到工作表时,它会input一个常量string(因为括号)。 如果我删除括号并input公式,它将作为普通公式input,而不是数组。 我如何input数组公式? 在VBA中,当您读取一个数组公式时,它会返回没有括号的公式。 当你想input一个数组公式时,你可以写range.FormulaArray = =SUM(IF(A1:A10>50,1)) (同样没有括号)。 保持两个plataform(JS和VBA)是一致的,并且还提供像Range.FormulaArray , Range.HasArray和Range.CurrentArray这样的属性。

如何在公式过滤范围input中包含文本和数字

我需要你的帮助,经过多次尝试和search,我还没有达到我的目标。 这是优秀的公式怀疑。 我的A1 Tags包含以下值作为示例: adm as ad b02 b02_e11 b02_e14 b807-10_e3 b807-10_e4 b807_e1 batch bp … and many more entries. 用下面的公式我能够只收集以b开头的匹配值: {=IFERROR(INDEX(Tags!$A$1:$A$999,SMALL(IF(LEFT(Tags!$A$1:$A$999,1)=$A$7,ROW(Tags!$A$1:$A$999)),ROW(1:1)),1),"")} Summary表中的A7包含字符b 。 上述公式的结果返回给我以下序列: b02 b02_e11 b02_e14 b807-10_e3 b807-10_e4 b807_e1 batch bp 但我不想在序列中的值batch或bp或任何其他值以b开头,没有一个数字之后,我只是想像b0 , b1 ,…, b8 。 为了达到我的目标,我尝试了很多解决方法,如在里面添加下面的公式和数组: =COUNT(FIND({0,1,2,3,4,5,6,7,8,9},A1))>0 在我目前的IF声明之间: {=IFERROR(INDEX(Tags!$A$1:$A$999,SMALL(IF(AND(LEFT(Tags!$A$1:$A$999,1)=$A$7,COUNT(FIND({0,1,2,3,4,5,6,7,8,9},B2))>0),ROW(Tags!$A$1:$A$999)),ROW(1:1)),1),"")} * B2是我想要粘贴公式的地方,因为B1包含标题。 上面的公式返回给我很多0。 我希望我可以给你足够的信息,如果我不能更确切地说,我还没有能够在这里粘贴图像,对不起。 谢谢你,罗德里戈

通过VBA完成的Excel中的数组公式不带或不带.ArrayFormula对于dynamic范围

我正试图在Excel表格上“翻译”一个以前没有使用VBA的程序。 这个简单的过程就是将这个数组公式(=(MAX(IF(C2:C355 = C2,F2:F355))}}插入到单元格CE2中,并将其拖放到数据集的底部(这是可变的)。 我正在寻找这样做的一个VBAmacros的一部分。 我已经尝试了很多不同的select,循环遍历一个可变的数据集,但仍然遇到问题。 这些包括: Dim i As Variant LastRow = Worksheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row For i = 2 To LastRow Cells(i, 83).FormulaArray = "=MAX(IF(cells(2,LastRow)= cells(5,i),cells(2,LastRow))" Next i 下面的代码似乎工作,但我的代码工作到dynamic循环的尝试会导致错误: Range("CE2").FormulaArray = "=MAX(IF(C:C=C2,F:F))" 通常这些错误是:“无法设置范围类的FormulaArray属性”。 我注意到,通过VBA放在表单上的数组公式非常慢。 我猜测有一种方法可以通过VBA实现与我的公式相同的结果,而不使用.VarriantArray? 我已经看过VBA的MAX函数,但是恐怕VBA命令有点过头了。 任何人都可以提供帮助: 如何通过dynamic数组循环,并通过macros将我的数组公式放置在工作表上 要么 使用除.ArrayFormula之外的VBA函数获得与我的数组公式相同的结果 提前谢谢了!

故障排除SUMPRODUCTfunction

我需要计算一个固定的单元格与另一列中的单元格相匹配的行数,第三列中的相应单元格不是空白的。 然而,我的公式performance奇怪,我不知道如何解决它… 这里是单元格中的原始数据: 列A到D中的所有单元格都只包含值。 在单元格E2中是这样的公式: = SUMPRODUCT(( – ((A $ 1:A $ 6)= B2))*(IF(ISBLANK(C $ 1:C $ 6),0,1))) 然而,我期望的E2单元格的值是2.这就是列A中与单元格B2中的值相匹配的单元格的数量,并且列C中的对应单元格不是空白的。 不幸的是,它为E2单元生成了3而不是2,我不知道为什么。 为了帮助我解决问题,我为G1到G6单元格input了以下数组公式: {= – ((A $ 1:A $ 6)= B2)} 以下单元格公式H1到H6: {= IF(ISBLANK(C $ 1:C $ 6),0,1)} 最后,我为单元格I2input了以下常规公式: = SUMPRODUCT((G1:G6)*(H1:H6)) 这确实产生了2的理想结果。但是,我无法弄清楚两种方法之间的区别。 我的实际电子表格看起来像列A,B和C,所以E2中的公式,如果它能产生所需的结果,是可取的。 谢谢!

Excel对超过范围的行数进行求和,以符合多个条件

我正在寻找一种方法来计算我的范围(超过两列运行)有多less行符合的标准,行中的一个单元格具有特定的背景颜色,而同一行中的另一个单元格具有不同的具体背景颜色。 事实certificate,我已经尝试使用Countifs内的颜色function,但他们似乎给出了错误的答案。 有什么build议么?

计算列表中特定单词的数量

我有一些很大的计算要做,因为我有一个Excel文件,列中有一列表示我们系统中每个事件的唯一ID。 我想知道所有事件已经完成的干预总数。 例如,假设我有这个: ID|People working on that incident ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ 0|AA0000 BB1111 CC2222 ZZ1234 1|BB1111 2|CC2222 ZZ1234 CC2222 ZZ1234 3|BB1111 CC2222 AA0000 BB1111 我有一个名为List的列表 ,其中有一个区域,其中包含我实际要包含的人员ID列表。 例如,假设List = {"AA0000","CC2222"}的第一个区域List = {"AA0000","CC2222"} 。 现在,我想知道我们的员工( 列表中 )已经对我所有的事件做了多less干预(我们在上面的数组中有4个)。 事件ID 0为6:2,ID 1为0,ID 2为2,ID 3为2。 假设数据是在一个不同的(封闭的)工作簿中,我怎样才能计算出使用我的列表List和上面的范围A1:B4(我想最终使用整个列,所以让我们说A:B)? 编辑: 我已经有了一些工作,计算整个专栏中特定单词的次数。 SUM( LEN('[myFile.xlsx]Sheet1'!$A:$A) -LEN( SUBSTITUTE('[myFile.xlsx]Sheet1'!$A:$A;$Z$1;"") ) ) /LEN($Z$1) Z1是我正在寻找的词(例如:CC2222)和'[myFile.xlsx]Sheet1'!$A:$A是我正在search的列。 是不是有一个非常简单的方法来使这个数组而不是Z1的工作? 长度总是相同的(六加一个空格)。 资料来源: http : //office.microsoft.com/en-ca/excel-help/count-the-number-of-words-in-a-cell-or-range-HA001034625.aspx

计算条件中值?

我有以下值: types值 A 5 B 6 A 3 B 7 A 9 A 11 我想计算typesA的中值,忽略typesB的值。 我怎样才能做到这一点,因为Microsoft Excel中没有MEDIANIF函数?