Tag: 参考

使用VBAdynamic设置范围等于另一个范围

我想设置一个引用命名范围name1的单元格区域,该单元格的name1等于另一个Excel表单上同样大小的单元格,也引用了一个命名范围name2 。 我希望Sheet1中的单元格等于Sheet2当前等于的相应单元格,因此我不能使用.value属性。 Sheets("Sheet1").Range("name1").Offset(0, 1).Resize(15, 5) = Sheets("Sheet2").Range("name2").Offset(0, 1).Resize(15, 5).value 除此之外,我不想使用价值。 有这样一个简单的方法来做我所需要的吗? 我已经search了一些论坛,但无法find一个好办法做到这一点。 我是否需要使用一个For each和R1C1命名? 要重申 – sheet1上的单元格应等于sheet2上相对单元格的值(范围是相同的大小)。 所以,例如。 单元格Sheet1!A1具有公式=Sheet2!A1 。

客户端在同一工作簿中引用其他工作表中的单元格

我有一个工作簿,旨在跟踪客户发票,我需要知道如何引用客户端在不同的工作表单元格。 我希望特定客户持有一个月的“欠金额”能够反映在他们各自“过去余额”栏下的下个月的工作表上。 问题在于客户的位置根据我们已经获得/丢失的客户按字母顺序每个月更改一次。 这意味着参考单元也需要相应地改变。 例如,如果Yelnats,Stanley在A1栏中,而他5月份的“Amount Owed”在B1中,那么我将在6月份的表格中提到这个单元格。 但是,如果我们拿皮卡德,让吕克,那么斯坦利就成了A2。 我可以每个月手动更改一次,但有更多的客户,这将需要一段时间。 即使客户端出现故障,我也需要知道如何引用上一页中的单元格。

从单元格值构build单元格引用另一个文件

我不确定这是否可能。 我需要引用多个其他Excel文件中的单元格。 为了简单起见,我可以在工作簿的Sheet1中使用以下string获取所需的数据: =SUM('C:\Folder\[Person''s Tracker.xls]April 2014'!$A$1:$A$54)" 它引用另一个工作簿来跟踪数据。 但是,我想dynamic地使用另一个工作表的单元格引用来构build这个string: “C:\ Folder \”作为文本存储在Sheet 2单元格C5中。 “[Person's Tracker.xls]”存储为工作表2单元格D5中的文本。 “2014年4月”作为文本存储在工作表2单元格E5中。 我尝试过CONCATENATE和INDIRECT各种组合,但总是以错误结束。 有任何想法吗?

VBA声明一个库vsdynamic加载它

我在VBA中创build一个使用vbscript.dll引用的应用程序 我想找出加载库的最佳方法,并且难以区分使用声明函数( http://msdn.microsoft.com/en-us/library/aa716201(v=vs.60) .aspx )或只是dynamic地将其添加到引用列表( 如何以编程方式添加引用 ,第2部分的最佳答案) 如果有人能澄清两者之间的差异,也许有一个好处,我会很高兴。 我的笔记: 我喜欢一个简单的声明函数的外观,一方面它很短,看起来不错。 另一方面,我喜欢避免硬编码的path,除非我知道这些文件不会在不同的地方find。 另一方面,我真的很喜欢方法2中的error handling。

K13是什么意思? (空单元格引用)

我从这里复制了一张Excel表格。 我不知道这是什么意思:(空白参考) ''!K13 ''!A12 它在里面的时候: =WENN(' '!K13=0;"Final";WENN(' '!A12<>' '!K12;"same values are missing";"Final")) 在哪里设置或看到引用的单元格? 感谢您的帮助!

删除另一张表中的行时避免引用错误

我有一个使用用户窗体和VBA制作的可视化日历。 信息被input到单独的数据表中,日历使用公式在macros运行之前将信息放在日历上,以将事物合并在一起。 现在,日历完美的工作,但我注意到,如果我去的数据表之一,删除一行,日历中的行然后在公式内部#REF错误。 这使得很难从日历中删除旧的项目并移动。 日历上的公式现在正在查看特定工作表中的月份(1 – 12月为2年)下的值“是”,然后获取名称和项目名称单元格值。 我想知道我可以对这个公式进行什么样的调整,以避免引用错误。 我环顾四周,试图做一个间接/地址公式,但不能真正让他们工作。 配方示例: =IF(ISNUMBER(FIND("Yes",'HI Project Work Database'!D2)), ('HI Project Work Database'!$B2&" – "&'HI Project Work Database'!$A2), "")

使用工作表CodeName和避免.Select&.Activate

在我的工作簿中,我经常需要使用他们的CodeName来激活一些工作表,然后在该工作表中search一些文本 ,并使用包含我正在查找的文本的单元格的行号或列号 。 在这种情况下,我使用下面的代码: Sheet16.Select '(Using codename) Cells.Find(What:="FIRST TEXT I'M LOOKING FOR", After:= _ ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate FirstRow= ActiveCell.Row Cells.Find(What:="SECOND TEXT I'M LOOKING FOR", After:= _ ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate SecondRow = ActiveCell.Row Rows(FirstRow & ":" & SecondRow + 1).EntireRow.Hidden = False Eveything运作良好,但现在我正在努力提高我的代码,我想更快地运行我的代码。 现在, 1-如何轻松地引用我的WorkSheets的CodeName? (我正在寻找像ThisWorkbook.Worksheets(“Sheet1”) […]

Excel引用其他单元格的相同地址

我有一个包含产品和价格信息的Excel工作表。 在另一张表格中,我尝试制作一个结合到另一个产品中的产品列表。 我想实现的是我可以使用一个单元格来引用产品名称,而另一个单元格则可以获得该产品的价格。 我知道有可能通过使用像索引和地址这样的函数来获取单元格的值,这不是问题。 我无法弄清楚如何得到产品单元指向的地址。 例: +—+——-+————–+————+ | | A | B | C | +—+——-+————–+————+ | 1 | name | price | quantity | +——-+————–+————+ | 2 | test | 12 | 1 | +—+——-+————–+————+ | 3 | | | | +—+——-+————–+————+ | 4 | =$A$2 | Price of B2 |————| +—+——-+————–+————+ 在单元格B4中,我需要A4引用的行的列B的值。 那可能吗?

excel跨范围分配值

我需要一个公式来分配一个范围内的值,同时考虑到可能的最大值 条件检查: 如果单元格值小于最大值,则取单元格值ELSE 从最大AND中减去单元格的值 检查条件是否有减法中的余数并添加到下一行; 否则放置0 样本数据和理想的结果 breakdown是理想的结果 我知道VBA可以解决这个问题,但我宁愿不可能。 谢谢你的帮助。 另外,不要反对使用帮手列:) 更新 当这些值在系列上是相同的时候,它取代了任何可以根据系列的长度dynamic重置的想法

轻松地引用偏移量中的单元格

我有一个很多公式的工作表,上面或右边是一个单元格。 如果我使用CTRL-D来填充行,则公式会被正确更新(因此,在B2中,= B1 + A2在B3中变成= B2 + A3)。 但是当我在行之间插入时,事情会变得混乱(所以在B3之上插入一行,将它移到B4使其公式变成= B2 + A4,这不是我想要的) 所以我想创build一个CellAbove和CellRight公式(所以我可以写= CellAbove()+ CellRight())。 我怎样才能做到这一点? 我的尝试: Function CellAbove() CellAbove = [Address(Row() – 1, Column())].Value End Function 不起作用。 更新:下面的函数工作,但具有它的单元格不会更新: Function CellAbove() CellAbove = Range([Address(Row() – 1, Column())]) End Function 所以如果A1有2,A2有= CellAbove(),那么A2将显示2.但是,如果现在我把A1改为3,那么A2仍然会显示2