我正在尝试创建一个使用该INDIRECT函数动态构建的范围的图表.Excel确实识别我正在创建的范围,INDIRECT因为它突出显示工作表上的相应范围:

但是在保存图表时,我收到一条错误消息,指出该函数无效:

有人知道问题是什么/如何创建从特定开始到特定终点的动态图表范围?
PS:你可以在这里下载上面的电子表格.我使用的公式:
=INDIRECT("sheet!"&E2&":"&E3)
我有一个使用以下语法的公式:
=SheetName!E10  
并且需要一些方法来拖动公式并在向右移动时更改工作表名称.因此,E10当拖动公式时,零件需要保持相同的纸张编号递增.我们有很多行和列要做,这肯定会加快我们的速度.
这可能吗?
所以结果看起来像这样:
=Sheet1!E10    =Sheet2!E10    =Sheet3!E10
这是结果:
 
  
从应用这个公式:
=INDIRECT("mo"&COLUMN()+0&"!B4")  
以下是从C#动态创建依赖选项列表的一般尝试.当从pick1中选择值'A'时,pick2应该显示来自SecondaryRangeA的值.
此代码几乎可以工作,但它不显示SecondaryRangeA,而是显示文字值"A".
pick2.Validation.Add(XlDVType.xlValidateList, 
                     XlDVAlertStyle.xlValidAlertStop, 
                     XlFormatConditionOperator.xlBetween, 
                     "=INDIRECT(\"A5\")");
当我在导出和修改数据验证后打开excel时,它会显示公式.
=INDIRECT("A5")
如果我在Excel中手动修改公式以排除引号,它按预期工作.
=INDIRECT(A5)
当我将代码修改为以下内容时,我得到一个例外.有任何想法吗?
pick2.Validation.Add(XlDVType.xlValidateList, 
                     XlDVAlertStyle.xlValidAlertStop, 
                     XlFormatConditionOperator.xlBetween, 
                     "=INDIRECT(A5)");
例外:
System.Runtime.InteropServices.COMException was unhandled
  ErrorCode=-2146827284
  Message=Exception from HRESULT: 0x800A03EC
Source=""
StackTrace:
   at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
   at Microsoft.Office.Interop.Excel.Validation.Add(XlDVType Type, Object AlertStyle, Object Operator, Object Formula1, Object Formula2)
   at TestExcelValidation.Program.Main(String[] args) in C:\TFS\ExcelInterop\TestExcelValidation\Program.cs:line 44
   at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
  InnerException: 
完整示例:
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Microsoft.Office.Interop.Excel; …我有一个电子表格,大约有20种不同的纸张,由股票代码命名.因为这些是模板,所以每个工作表中的信息都在相同的单元格中找到.例如,无论工作表如何,当前年份的EPS始终位于单元格A55中.
我想构建一个摘要表,它将根据代码从模板中提取数据.因此,设想一个摘要表,其中包含A列中的代码(也是工作表名称)和B列中的公式,以引用列表中每个不同工作表中的相同位置.
我知道我可以构建一行,然后简单地将其复制并为每个工作表名称/自动收报机执行查找/替换,但似乎我应该能够自动化公式,以便这些知道查看A列,然后转到具有该名称的工作表,然后返回公式中引用的数据.这会使随着时间的推移更容易添加床单/代码.我试过= INDIRECT没有成功.
如何让公式引用摘要表中的A列,以便知道在哪个模板/表中查找信息?
excel formula worksheet-function excel-formula excel-indirect
我正在使用 INDIRECT 函数从另一个表中获取数据。直接的方式是“sheetname!A5”。我动态需要它,因此工作表名称也是表的一部分,使用间接“indirect("'"&G$1&"'!A5"),而 G1 包含工作表名称工作正常。
间接速度非常慢,这优于我的项目,因为我需要大量的获取。
是否有一个不太强大/性能更高的函数来从变量表中获取数据?
我在工作簿中多次使用 INDIRECT 函数,它导致了性能问题。我需要用能给我相同结果的东西替换它们。每当发生任何更改时,所有间接都会重新计算,从而导致工作簿滞后。
我想知道是否有一种方法可以在 VBA 中编写 INDIRECT 而无需实际使用 INDIRECT 函数,并消除代码中函数的波动性。
 =INDIRECT("'" & $AC$9 & "'!" & AC26)
这是一个例子。我需要删除 INDIRECT 但对此单元格得到相同的结果。有没有办法在VBA中实现这一点?
所以我有两个单元格,都指的是另一个单元格.一个单元格具有另一个单元格的行,另一个单元格具有该列.
我尝试使用间接声明:=INDIRECT("'VENDOR COSTING'!R"&R2&"C"&S2)虽然我确实做了一个ConvertToLetter,所以列字母是F,它目前在Cell中U2.Vendor costing是另一个工作表名称,行号在单元格中R2.
如何编写间接语句以在另一个工作表中生成该单元格中的值?
我正在使用VLOOKUP但不是硬编码对文件位置的引用我想使用该INDIRECT函数来引用文件的位置.但是,我的尝试不起作用.这有什么问题?
=VLOOKUP(A2, INDIRECT(A1)$A$2:$B$1000,2,FALSE)
单元格A1包含:
C:\Documents and Settings\User\Desktop\[ABC.xlsm]Sheet1
我收到错误:您键入的公式包含错误.
我错过了什么吗?
我有 2 张纸,我想将一个单元格的值显示到另一张纸上。我想在另一个工作表中显示的单元格是C26,它具有值€719.39,该工作表的名称是January. 在另一张纸的一个单元格中,我写
=INDIRECT('January'!C26)
我有一个错误
Error Function INDIRECT parameter 1 value is '€719.39'. It is not a valid cell/range reference. 
为什么我收到这个错误?