将VBA中的打印区域设置为列中的当前单元格

我想在打印区域只包括一个电子表格中的一列,但用户可以添加很多行,以便列可以dynamic增长。 我希望这一列完全被列入打印区域。 所以,如果说10行被添加,它也会打印这些新的10行。 我如何在Excel VBA中做到这一点? 似乎有几种从网上看到的方法,但我第一次使用这个方法,所以我会很感激你的意见。 谢谢。

你不需要这个VBA。

这是做什么。

  1. 切换到希望使用dynamic打印范围的工作表,例如Sheet1。

  2. 使用Ctrl-F3打开名称pipe理器。

  3. 点击顶部的新buildbutton。

  4. 对于名称字段input: print_area

  5. 对于范围字段selectSheet1(或您所在的任何一张表)。

  6. 对于“指向”字段,请粘贴以下公式:

     =$A$1:INDEX($A:$A,MAX(IFERROR(MATCH({"*";9E+99},$A:$A,{-1;1}),1))) 
  7. 单击确定,然后closures

而已。

现在,列A被添加到打印范围将包括列A的所有内容,而没有其他内容…仅用于该表格。

注意:如果您希望为列A以外的其他列,只需将公式中的A更改为不同的列标签。