Tag: named ranges

如何在命名范围内有多个if语句

我正在寻找如何我可以写在一行内的以下if语句。 不幸的是,IF语句单独工作,但每当我把它结合起来,它给了我一个#VALUE错误。 =IF(A1=OUT,C1,IF(A1=INT,C1,IF(A1=IN,C1,"Not Found"))) OUT,INT和IN都是在我的文件中的所有命名的范围,我已经弄清了为什么我得到错误的原因,我认为这是由于第一个陈述不是真实的,从我可以看到它不能移动到下一个部分的公式。 我遇到的问题是当我到达单元格A8时,此单元格中的值现在属于已命名的范围INT,这是公式显示#VALUE错误时的值。 我真的很感激,如果有人可以请build议我要去哪里错了,我该如何解决这个问题。 提前致谢。 顺便说一句,以下是我的文件中的命名范围: A1:A7 = OUT A8:A10 = INT A11:A17 = IN 结果在以下范围内: C1:C7 = Lose C8:C10 = Draw C11:C17 = Win 我想要的公式是,如果我在列A中的任何值属于任何指定的范围,我希望它显示正确的结果。 例如,单元格A8的值为“A8”,这属于指定范围INT,所以我希望IF语句可以工作,以便显示值Draw。 如果我在单元格A11中,它的值为“A11”,属于指定范围“IN”,所以我希望公式能够显示出值Win。 以下是我的文档的图像。

为什么我的Excel Interop代码中的字体大小设置为?

我在我的代码中设置了一个范围的字体大小: var rowRngRptTitle = _xlSheet.Range[_xlSheet.Cells[2, 1], _xlSheet.Cells[2, 13]]; rowRngRptTitle.Merge(Type.Missing); rowRngRptTitle.Font.Size = 24; rowRngRptTitle.Font.Bold = true; rowRngRptTitle.Value2 = String.Format("Delivery Performance – {0} – {1}", _delPerfBeginDate.ToShortDateString(), _delPerfEndDate.ToShortDateString()); …但值不生效,或“粘” – 字体大小很小(看起来像10,与未configuration的范围相同)。 但是,如果稍后将其设置,在整个工作表编写后,通过创build一个新的范围: var rowRngRptTitle2 = _xlSheet.Range[_xlSheet.Cells[2, 1], _xlSheet.Cells[2, 13]]; rowRngRptTitle2.Merge(Type.Missing); rowRngRptTitle2.Font.Size = 24; rowRngRptTitle2.Font.Bold = true; …它的作品 – 字体大小确实是24而不是10。 什么可以取消早期设置的大小? 在引用该范围的整个代码中没有其他的“Font.Size =”。 在一些更多的情况下,这里是代码(不必要的effluvia消除): private void PopulateSheet(string shortName) { […]

名称。使用variables添加到VBA中

如何使用以下variables创build以下不连续的命名范围? ActiveWorkbook.Names.Add Name:="Validation_Range", RefersToR1C1:= _ "='Holding Template'!R3C1,'Holding Template'!R4C2" 这里是变数: Dim PM As Range Dim statement_date As Range Set PM = ws.Range("A3") Set statement_date = ws.Range("B4") 如果我使用1个variables,但是我无法使用多个variables来创build不连续的范围。

创builddynamic范围并存储命名范围

我在工作表(“模型”)中生成范围A. 我将这些值移到工作表(“数据”),以便我可以开始存储所有这些数据。 我将有另一个选项卡(“SheetC”),显示存储的数据中的两个用户select的范围。 例如从第1天开始的范围A和从第2天开始的范围A.在移动数据以存储在“数据”中的过程中,我想将其放置在最后一个的下面。 我有一个在“SheetC”中引用的计数器,每当新的数据放在表单(i)中时,计数器就会增加。 理想情况下,我希望将“数据”中的每个范围A都命名为不同的范围,因此当用户select某个范围时,我可以通过调用它来简单地显示该范围,而不必在存储的数据中查找值,抵消。 Dim rngData_Total_a As Range Dim rngData_Total_b As Range Dim i As integer i = Sheets("SheetC").Range("AJ3").Value Set rngData_Total_a = Sheets("Model").Range("R14:BH270") Set rngData_Total_b = Sheets("Data").Range(Cells(3 + 270 * i, 3), Cells(3 + 257 * (i + 1), 3)) rngData_Total_b.Value = rngData_Total_a.Value 我不断收到应用程序/对象定义的错误。 我们可以简单地设置一个范围吗? 还是有更有效的方法来做到这一点? 理想情况下,我也想要一个dynamic范围名称,以便rngData_Total_b更改它的名称与每个新的范围。 基本上这个过程将复制我预先定义x个范围的数字作为不同的名称和“数据”中的不同位置,考虑到我不知道我将在那里存储的范围的数量。 谢谢 安东尼

通过C#设置Excel命名范围?

我试图使用C#复制这个Access VBA代码,但我无法这样做。 想知道是否有人曾经尝试过,可以帮助。 oWB.Worksheets(“Signoff”)。Range(“rgSignOffRecTemplate”)。Value = g_TemplatePath&“Signoff_Rec.XLT” rgSignOffRecTemplate是我试图写入的Excel模板中的“Defined Name”。 非常感谢您的帮助。

Excel:命名范围内的Vlookup并返回超出范围的值

我需要find一种方法来search命名范围内的值,并返回该范围旁边的列。 原因很简单:我在列A中使用名称范围进行列表validation。在此列表中,有完整的产品types名称(例如,Relay,Contactor,Enclosure),我需要返回列B中的简短描述。Rly,Cont,Encl),当用户search列表时很容易find他要找的东西。 我知道我可以扩大我的范围为$ A:$ B,但如果我这样做,那么$ B的所有值将包括在列表中… 这显示了一个方法来找出我需要什么:= VLOOKUP(A1;“RANGE + 1C”,2,0)我尝试了很多方法与偏移量和索引,但无法find一种方式来这样做…我甚至认为这将是可能的相对参考(例如= VLOOKUP(A1,说明; 1“RC [1]”,0)或类似的东西…也看在谷歌find一些信息,但似乎是一件非常陌生的事 我需要在一个公式中做到这一点,而不是在VBA中。 这里是一个示例文件的链接: http : //www.filedropper.com/descriptionbuilder 任何提示? 谢谢!

Excel使用INDEX从命名范围获取行导致公式错误

我有一个非常简单的公式来获得连续的值的总和: =SUM(K5:P5) 但是,K5到P5是命名范围中的第一行,我宁愿引用命名范围,所以我将其更改为: =SUM(INDEX(S2ScoresTotUnitQ1,Row("A1"),0)) 但是我得到了一个“我们发现这个公式错误的问题”。 如何引用命名范围的单个行而不会出现错误?

用户窗体中的命名范围(Excel)的variables给我一个错误

我对Excel-VBA(实际上任何一种编程)都很陌生,我正在寻求帮助。 我正在尝试在Userform(Excel-VBA)中创build一个命名范围的variables,但是当我尝试使用创build的variables的macros时,我收到一个错误: 运行时错误'1004':对象'_Worksheet'的方法'范围'失败 如何重现: 1)用一个标签(在我的代码中命名为test1)制作一个用户窗体。 2)为macros制作模块。 这是Userform和模块的代码。 用户表单 Private Sub UserForm_Initialize() Dim wsTest As Worksheet Dim rnTest As Range Set wsTest = Sheets("Test") MsgBox wsTest.Name Set rnTest = wsTest.Range("NamedRange") MsgBox rnTest.Name Me.Test1.Caption = Format(wsTest.Range("rnTest")(1).Value, "$#,##0") End Sub 和模块 Sub NR_Test() UserForm1.Show False End Sub variables'wsTest'起作用。 我知道这一点,因为当我input名称pipe理器(NamedRange)中看到的命名范围名称时,macros的工作。 我search了Stackoverflow和其他资源来寻找一个解决scheme。 大多数post告诉我,我需要使用“设置”从一个范围,使一个variables,但不幸的是,这是不够的。 我错过了一些重要的东西,我不能把手指放在上面。 任何帮助将非常感激。 如果有任何问题,请不要犹豫,问。 干杯,西蒙