需要VBA代码来搜索工作表中的数据并在一个页面中打印所选数据

时间:2015-02-28 22:45:28

标签: excel vba excel-vba

我需要在工作表中找到各种数据并选择这些数据并将所选数据打印到打印输出,并将所有数据打印在一页中。我尝试使用此代码但出了点问题:

Sub Selection()
Dim varRow As String

For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
If Range("A" & i).Value = "M655" Or Range("A" & i).Value = "Equity Fund" Then
    If Trim(varRow) <> "" Then
    varRow = varRow & "," & i & ":" & i
    Else
    varRow = varRow & i & ":" & i
    End If
End If
Next i

Range(varRow).Select


Selection.PrintOut
With ActiveSheet.PageSetup
    .PrintTitleRows = "$3:$3"
    .PrintTitleColumns = "$B:$B"
    .Orientation = xlLandscape
    .Zoom = False
    .FitToPagesWide = 1
    .FitToPagesTall = 1

End with
End Sub

1 个答案:

答案 0 :(得分:0)

一个问题是,在遍历单元格之后,varRow是一个&#34; M655&#34;和&#34;股票基金&#34;被逗号隔开。然后尝试将该字符串用作无效范围的参数。如果您正在尝试构建一系列范围地址(&#34; a1&#34;,&#34; a2&#34;等),请尝试使用.AddressLocal属性。此外,在设置打印设置之前使用.PrintOut。在设置页面设​​置设置后尝试放置该行以使它们生效。