我是一个应用程序的作者,在打开Excel工作簿之前,删除并重新创建一些工作表,例如下面示例中的"Sheet1".
同一工作簿中的其他工作表(比如Sheet2)可能具有引用替换工作表的公式,如下所示:
=IF('Sheet1'!A9="","",'Sheet1'!A9)
Run Code Online (Sandbox Code Playgroud)
不幸的是,当更换纸张时,上述公式中对Sheet1的引用被破坏了
=IF(#Ref!A9="","",#REF!A9)
Run Code Online (Sandbox Code Playgroud)
任何人都可以想到一种编码这个公式的方法,这样它就不会失败吗?例如,它可以从Sheet2中的隐藏单元格中获取工作表的名称或其他内容?
我对Excel公式知之甚少,不知道可能性是什么.
TIA
我试图创建从一个工作表到另一个工作表的超链接.工作表很大,并且有很多超链接到其他工作表的所有位置,因此我尝试使用可以复制/粘贴的公式来执行此操作.
这就是我所拥有的:
=HYPERLINK(CELL("address",INDEX('Test Results'!A:A,MATCH("TestCase-001",'Test Results'!A:A,0))),"TestCase-001")
Run Code Online (Sandbox Code Playgroud)
它评估的URI是:'[Test Results 1.xls]Test Results'!$A$17,并且A17在Test Results工作表上确实是要链接到的正确单元格.问题是,当我单击超链接,所以我只能测试案例详细信息,我收到错误说"无法打开指定的文件",我不知道为什么,因为URI看起来正确.有什么想法可以帮我解决这个问题吗?
使用Excel 2003.
= MOD((B2 * (D1 - 1) ) + B3, B1)
Run Code Online (Sandbox Code Playgroud)
如果我将其复制到另一个单元格中,它会将所有单元格值增加1.如何保持所有值相同?或者能够复制并仅允许一个变量增加?
我想计算一个列的最后20个数字的移动平均值.问题是列的某些单元格可能是空的,应该忽略它们.例:
A
175
154
188
145
155
167
201
Run Code Online (Sandbox Code Playgroud)
最后三个的移动平均值为(155 + 167 + 201)/ 3.我试图用平均值,偏移量,索引实现这个,但我根本不知道如何.我对宏有点熟悉,所以这样的解决方案可以正常工作:=MovingAverage(A1;3)
感谢您的任何提示或解决方案!
我试图在给定列中显示重复的计数.我可以计算列中有多少重复,但我想知道这行是第一个找到的,第二个,等等.这里是一些示例数据(已排序)以及我希望它出现的方式:
1: ALPHA | 1
2: ALPHA | 2
3: DELTA | 1
4: ECHO | 1
5: ECHO | 2
6: ECHO | 3
7: HOTEL | 1
8: HOTEL | 2
Run Code Online (Sandbox Code Playgroud)
如果需要VBA或者可以在公式中完成它并不重要,我似乎无法使其工作.
如果更改了cell1,我想使用worksheet_change()来运行macro1,如果更改了cell2,我想使用macro2等.我知道worksheet_change()只允许使用target和sh,并且只能使用一个sub.我以为我可以运行类似的东西:
Private Sub Targets(ByVal Target As Range)
Select Case Target.Address
Case "cell1"
Call SheetChange.macro1
Case "cell2"
Call SheetChange.macro2
Case "cell3"
Call SheetChange.macro3
End Select
End Sub
Run Code Online (Sandbox Code Playgroud)
但是,显然我不能!我也试过了
Private Sub Targets(ByVal Target As Range)
If Target.Address="cell1" Then
Call SheetChange.macro1
ElseIf Target.Address="cell2" Then
Call SheetChange.macro2
Elseif Target.Address="cell3" Then
Call SheetChange.macro3
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
但也没有运气.有帮助吗?
有没有办法阻止Excel 2010对包含多个带有前导加号或减号的数字的单元格进行数学运算?例如
-706795 -1456130 -1869550 -936304 -1729830 -1737860 -687165 -16807800
Run Code Online (Sandbox Code Playgroud)
现在它将数字加总为一个值.我希望它们如上所示.将单元格格式化为文本不起作用.我从CSV获取此数据,并且对其内容的控制有限......
所以我有两个单元格,都指的是另一个单元格.一个单元格具有另一个单元格的行,另一个单元格具有该列.
我尝试使用间接声明:=INDIRECT("'VENDOR COSTING'!R"&R2&"C"&S2)虽然我确实做了一个ConvertToLetter,所以列字母是F,它目前在Cell中U2.Vendor costing是另一个工作表名称,行号在单元格中R2.
如何编写间接语句以在另一个工作表中生成该单元格中的值?
我试图找到一种使用Excel来确定单元格的第一个字符是数字还是字母的好方法.我使用它来确定一个标记是否标记取决于答案.这是一个示例表:
**Status Code** Inactive 2AJ Active ALO Active PN9 Active Y2Y Inactive 1P9
实质上,如果" 代码"列的开头字符是数字值,则" 状态"列应显示"非活动".目前我有这个,它不起作用:
=IF(ISNUMBER(LEFT(B1,1)),"Inactive","Active")
Run Code Online (Sandbox Code Playgroud) 我有两个列范围:C410:C1100和M5:M100.我想遍历C范围,一次一个单元格,并尝试在整个M范围内找到至少一个匹配.如果找到了匹配项,我想在C黄色或其他东西中为单元格的背景着色(说实话,格式并不重要).
我一直在努力寻找通过公式来做到这一点的解决方案.我想过VLOOKUP但不确定.
excel conditional-formatting worksheet-function excel-formula excel-match
excel ×10
excel-2010 ×2
vba ×2
excel-2003 ×1
excel-match ×1
excel-vba ×1
hyperlink ×1
syntax-error ×1