我们使用VB.Net自动化Excel,并尝试在我们可以设置为不打印的Excel工作表上放置多行文本。在这些之间我们会有可打印的报告。 如果我们添加文本框对象,并将打印对象设置为false,我们可以这样做。 (如果你有其他方式,请指导我)
添加文本框的代码是:
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 145.5, 227.25, 304.5, 21#)
但定位是分数。我们需要一种方法将它放在特定的单元格上,然后用单元格对其进行调整。当我们知道将哪个细胞放在上面时,我们怎么能找到它的位置呢?
答案 0 :(得分:8)
如果您有单元格名称或位置,则可以执行以下操作:
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大小时,文本框也是。
答案 1 :(得分:0)
当你复制&粘贴文本框,Excel会将新文本框放在当前选中的任何单元格上。因此,您只需使用VBA副本即可轻松实现此目的。粘贴命令。如果您要使用许多非常相似的文本框,这可能特别有用,因为您实际上是在创建文本框模板。