我试图在一张纸上打印几个不连续的列。我在页面布局中使用设置的打印区域。但是它在每个列范围之后创建了一个分页符。我有一个宏,允许您粘贴一系列数据,然后它清除数据并打印页面。所以隐藏列是行不通的。有人能告诉我如何在一张纸上打印我需要的列。这是我希望包含打印代码的宏。
Sub cleardatanotformulas()
ActiveWindow.SelectedSheets.PrintOut Copies:=1
On Error Resume Next
Cells.SpecialCells(xlCellTypeConstants).ClearContents
ActiveWorkbook.Close SaveChanges:=False
End Sub
答案 0 :(得分:0)
您可以创建一个新页面来接收您选择的打印列,如下面的代码所示。 Mu非连续列位于MySourceSheet中。您必须将它们复制到MytargetSheet中并打印出来。
Sub CopyInAdjacentColumnsForPrinting()
Sheets("MySourceSheet").Select
Range("A:A,C:C,E:E").Select 'We select A, C and E columns for example, you can specify your own columns
Range("E1").Activate
Selection.Copy
Sheets("MyTargetSheet").Select ' This sheet is for receiving selected columns in contiguous columns.
Range("A1").Select
ActiveSheet.Paste ' We copied selected columns in this sheet.
Range("A1").Select
End Sub
希望这有帮助!
答案 1 :(得分:0)
抱歉@Anne B,我无法在评论块中添加我的代码,然后我添加一个新答案:) 基于您在名为MyTargetSeet的工作表(在此示例中)中复制非连续列的事实。 你可以用它。
<form method='post'> <!-- you can see there is no action here-->
希望这有帮助!