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

时间:2015-09-18 16:35:58

标签: excel excel-vba vba

我想在打印区域的电子表格中只包含一列,但用户可以添加大量行,以便列可以动态增长。我希望该列完全包含在打印区域中。因此,如果添加了10行,它也会打印出新的10行。我如何在Excel VBA中执行此操作?似乎有几种方法可以从我在网上看到的内容开始,但我是第一次使用它,所以我很感激你对此的意见。谢谢。

1 个答案:

答案 0 :(得分:1)

你不需要VBA。

这是做什么的。

  1. 切换到您希望打开动态打印范围的工作表,例如Sheet1。

  2. 使用Control-F3打开名称管理器。

  3. 点击顶部的“新建”按钮。

  4. 对于名称字段,请输入:print_area

  5. 对于范围字段,请选择Sheet1(或您所使用的任何一张纸)。

  6. 对于“引用到”字段粘贴此公式:

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

  8. 就是这样。

    现在,当列A添加到打印范围时,将包括所有列A,而不包含任何其他...仅适用于该表。

    注意:如果您希望将此列用于与A列不同的列,只需将公式中的A更改为不同的列标签。