Tag: 函数

刷新用户定义的function,没有application.volatile

我正在使用我在互联网上find的函数来提取切片器(连接到表,而不是数据透视表)的值,并将其存储在单元格中。 该function包括添加application.volatile很好地工作,如在问题刷新Excel VBAfunction结果的问题也讨论。 问题是,由于volatile函数,我的OpenSolver模型无法运行。 因为每次迭代Excel都在进行计算,这使得OpenSolver认为Excel没有为build模做好准备。 有没有一种方法可以在每次切片器更改值时更新单元格的值,而不使用application.volatile ? 我已经尝试使用: Private Sub Worksheet_Change(ByVal Target As Range) ActiveWorkbook.Sheets("Dashboard").Range("B7").Formula = _ ActiveWorkbook.Sheets("Dashboard").Range("B7").Formula End Sub 和 Private Sub Worksheet_Change(ByVal Target As Range) ActiveWorkbook.Sheets("Dashboard").Range("B7").Calculate End Sub 我用来提取切片器值的function取自http://www.jkp-ads.com/articles/slicers05.asp : Public Function GetSelectedSlicerItems(SlicerName As String) As String Dim oSc As SlicerCache Dim oSi As SlicerItem Dim lCt As Long On Error Resume Next […]

访问function将多个标准匹配到多个输出(或Excel)

我想知道是否有一个简单的function,将能够匹配一定的标准,以各种产出。 很难形容,但我想要的是这样的: =function([criteria],[output],[criteria],[output],……) 举个例子: =function([SiteID]=1,"Global",[SiteID]=2,"IT",[SiteID]=3,"DE",[SiteID]=4,"NL",[SiteID]=5,"AU") 我知道我可以使用If语句,但它使它看起来很复杂,希望有一个简单的函数,但很难search复杂的标准。 这最好是Access,但在Excel中也是非常有用的。

IF函数旁边的INDIRECT函数

我不确定这是如何工作的,但有没有机会可以帮助我? 我需要间接函数与另一个公式一起工作,因为它引用了一个不断移动的单元格(新的行被添加到它上面的Outlook VBA我有这意味着公式引用的变化),但我总是需要这个公式引用A2。 这是我正在使用的function: =IF(A2="online","ON",IF(A2="offline","OFF","ON")) 间接去哪里? 它可以进去吗?

错误与Excel嵌套,如果函数

我试图运行一个报告,从各种表中获取信息。 我已经在Excel 2013中创build了下面的嵌套if函数,但是发现它运行不正确,而且我仔细查看了一下,我很困惑。 带有“WAGE”的最上面一行运行正确,并返回正确的信息。 带“TAX”的底线仅在返回false时返回。 如果我通过在工资领域插入“税收”来改变他们,反之,税收就会下降,工资收益就会变成虚假的,所以我相当肯定我的逻辑中的错误/问题在第二行。 任何人都可以告诉我我做错了什么? 谢谢! =IF(RIGHT(B3,4)="WAGE",VLOOKUP(A3,'Tax010'!$A$2:$R$5000,16,IF(RIGHT(B3,3)="TAX",VLOOKUP(A3,'Tax010'!$A$2:$R$5000,17,FALSE)))

匹配列表和呈现术语的单元格

我试图用定期的Excel函数。 我所拥有的是关键字列表,需要将其与较小的术语列表进行匹配。 例如,A2单元具有批发折扣家具 我的名单有: discount cheap sale bargain 我需要的东西,将检查列表单元格,并在单元格中提供“折扣”。 到目前为止,我所能做到的最好的是 =SUMPRODUCT(COUNTIF(A2,"*"&Sheet2!$I$2:$I$6&"*"))>0 这告诉我列表中的任何项是否在单元格中。 之后,只需手动input渲染为TRUE的术语。

Excel:在数组中find最常见的值(IF,索引,模式)

我试图find一个范围内的最常见的价值,如果共享邮箱(Col C)等于Finance,告诉我访问用户的最常见团队编号 (Col B)它: 我到目前为止的function是(显然忽略绝对单元格引用) =INDEX($B$2:$B$20,MODE(MATCH($C$2:$C$20,$C$2:$C$20,0))) 我可以做一个数据透视,但我需要插入一个单元格的值,并在一个枢轴vlookup不会削减它。 还有成千上万的行。 但基本上,主要的结果是我正在寻找的,只是在一个单元格通过公式。 下面是表格的一个例子,一个关键点和公式和结果。 带有透视的Excel图像 任何和所有的帮助是受欢迎的。 干杯马特

Excelfind部分包含数字的单元格

我想返回一个值,如果一个单元格部分包含一个数字: 例如 : Range: A1 = 90003 B Search value: B1 = 90003 Return: (This is what I want) C1 = Yes 我试过类似的东西 =IF(ISNUMBER(SEARCH(A1,B1)), "Yes", "No") 但是这只适用于文本值,不适用于数字。 请帮助,如果你知道我可以使用? 我最好喜欢使用一个函数。 我通常只写一个macros,但是对于这个活动,如果可能的话,我想使用一个函数。

Excel匹配与逻辑expression式的问题

(我明白Excel只是边界编程) 我有一个代表过程中的步骤和可能的错误的数据块: ProcessStep状态 费用确定 FormRecvd确定 angular色分配确定 检入未检入。 ReadyToStart未准备好启动 我想find不是“OK”的第一个状态。 我曾试图这样做: =Match("<>""OK""", StatusRange, 0) 这是应该返回的第一个元素在不等于(<>)的范围内的索引为“OK” 但是这不起作用,而是返回#N/A 我期望它返回4(在基于1的索引中的索引#4,表示CheckedIn是第一个非OK元素) 任何想法如何做到这一点?

为什么这个不稳定的LastRow函数不能自动重新计算?

我决定在Excel中确定LastRow的函数可能为我节省一些时间, Function LastRow() As Long Application.Volatile With ActiveSheet.UsedRange LastRow = .Rows(.Rows.Count).Row End With End Function 在大多数情况下,这是好的,但我注意到,如果实际的最后一个单元格只是格式化,它不会重新计算它的方式,如果input一个值。 它会在重新计算时得到正确的结果,但是我认为使这种不稳定会自动做到这一点。 我误解了什么? 注意任何人做类似的事情,请注意,使这个易失性和使用ActiveSheet使得它不可靠的时候,你激活另一个表,因为该函数返回该表中的LastRow并重新计算。 可能不是最好的主意。

如何将date单元格旁边的确切值用于Excel中的另一个工作表或表格?

我需要取对应于某个date的值,并在另一个表或表中使用它: 在一张表中,我有两列,一列是date(一年中的每一天),另一列是固定值。 在另一张纸上,我需要根据手动input的date取这些固定值。 尝试使用IFfunction没有成功。