4

我们正在使用 VB.Net 自动化 Excel,并尝试在 Excel 工作表上放置多行文本,我们可以将其设置为不打印。在这些之间,我们将有可打印的报告。如果我们添加文本框对象,我们可以做到这一点,并将打印对象设置设置为 false。(如果你有其他方法,请指导我)

添加文本框的代码是:

ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 145.5, 227.25, 304.5, 21#)

但定位是点。我们需要一种方法将其放置在特定单元格上,并根据单元格调整大小。当我们只知道把它放在哪个单元格上时,我们怎么能找到把它放在哪里呢?

4

2 回答 2

9

如果您有单元格名称或位置,您可以执行以下操作:

With ActiveSheet
  .Shapes.AddTextbox msoTextOrientationHorizontal, .Cells(3,2).Left, .Cells(3,2).Top, .Cells(3,2).Width, .Cells(3,2).Height
End With

这将在单元格 B3 上添加一个文本框。当 B3 调整大小时,文本框也是。

于 2008-09-15T22:51:51.417 回答
0

当您复制和粘贴文本框时,Excel 会将新文本框放置在当前选定的任何单元格上。因此,您只需使用 VBA 复制和粘贴命令即可轻松实现此目的。如果您要使用许多非常相似的文本框,这将特别有用,因为您正在有效地创建文本框模板。

于 2008-09-16T19:58:23.323 回答