excel vba如果单元格在Excel电子表格中包含值打印区域?
问题描述:
我试图使用vba代码打印excel区域(AC120:AT128),当单元格值包含“X”时 此刻我的代码打印出整个电子表格,但我只希望它打印出所选细胞区域。excel vba如果单元格在Excel电子表格中包含值打印区域?
有人可以告诉我怎么做到这一点吗?提前致谢。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim celltxt As String
celltxt = ActiveSheet.Range("AQ98").Text
If InStr(1, celltxt, "X") Then
Dim ws As Worksheet
For Each ws In Worksheets
If ws.Range("AQ98") = "X" Then
ws.PrintOut
End If
Next ws
Else
End If
End Sub
答
我不确定您使用的是什么版本的Excel,但在Office 2010中,您可以简单地使用。
Range("AC120:AT128").PrintOut()
或者
Selection.PrintOut()
您还可以使用设置打印区域功能,例如
ws.PageSetup.PrintArea = "AC120:AT128"
感谢即时通讯使用2010年,凡在我行代码abouts我把这个好吗? – 2014-09-25 13:01:57
如果我已经理解了你想达到的目标,你应该能够删除“ws.PrintOut”行并用“Range(”AC120:AT128“)。PrintOut”行代替它。 – 2014-09-25 13:12:40
是的,我设法做到了这一点,感谢您的帮助,最后我能告诉它打印纵向页面? – 2014-09-25 13:13:44