【问题标题】:VBA printing a range using other variablesVBA使用其他变量打印范围
【发布时间】:2014-09-07 10:35:56
【问题描述】:

所以我的 excel 文档中有一些单元格的索引。我现在正在尝试使用 VBA 在两个不同的范围之间建立联合。

到目前为止我...

Function FiveYTwoY()
 Worksheets("India Data").Activate
 index5_90 = Cells(10, "B").Value '5Y 90 day index
 index5_yes = Cells(9, "B").Value '5Y yesterday index
 index2_90 = Cells(7, "B").Value  '2Y 90 day index
 index2_yes = Cells(6, "B").Value '2Y yesterday index
 range5_90 = "Q" & index5_90
 range5_yes = "Q" & index_yes
 range2_90 = "S" & index2_90
 range2_yes = "S" & index2_yes 
 fullRange5 = Range(range5_90, range5_yes)
 fullRange2 = Range(range2_90, range2_yes)
 FiveYTwoY = Union(fullRange2, fullRange5)

但是这不起作用并且在调试之后......这是因为我的范围设置不正确。我该如何解决?我不断获得#value。我想打印连接的范围感谢您的帮助!

【问题讨论】:

  • 如果您从工作表中调用它,它是won't work
  • 我正在从工作表中调用单元格值。你是说我需要一个潜艇?我想基本上将两个不同的范围粘贴到一列中

标签: vba excel


【解决方案1】:

1- Cells() 仅适用于数字(据我所知)。

2- 你为什么不直接在你的单元格中输入你的引用..

(In Cell 5 90)
= B10

您可以使用 inCell 命令行轻松完成您刚才所做的一切。

【讨论】:

  • 第二条评论是什么意思?不是很懂
  • 不要在 VBA 中编写宏以将一个单元格引用到另一个单元格,而是键入一个单元格 =,然后单击您要引用它的单元格。见this for exemple
  • 我明白了。我正在处理实时数据,所以我的手机号码每天都会更新。例如,我想抓取 A5:A12 和 B4:B13 并将它们组合到一个列表中。然而,这些数字每天都会变化 1,因为它是最新输入的日期。
  • 你的意思是如果今天要抢A5:A12 and B4:B13,那么明天还要抢A6:A13 and B5:B14
  • 是的。那是一个理论上的例子,但是是的,你是对的。我想合并这两个列表,以便它们在 C 列中形成一个列表
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多