需要VBA代码来search工作表中的数据并在一页中打印选定的数据

我需要在工作表中查找各种数据并select这些数据,并将所选数据打印出来,并将所有要打印的数据打印在一页上。 我尝试了这个代码,但有些错误:

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 

一个问题是,在循环遍历单元格后,varRow是由逗号分隔的“M655”和“股票基金”string。 然后尝试使用该string作为无效范围的参数。 如果您正在尝试构build一系列范围地址(“a1”,“a2”等),请尝试使用.AddressLocal属性。 另外,您在设置打印设置之前使用.PrintOut。 设置页面设​​置设置后,请尝试放置该行以使其生效。