打印报告 – 与VBA代码的问题

我遇到了一些代码问题。 我们使用以下内容search日志以获取特定信息,填充图表,然后在完成后打印并清除图表。

问题是,如果我们将search条件从CIS更改为入站(或其他任何事情),它会拒绝使用日志中的信息填充图表,但仍会打印出图表标题。

这是我们正在使用的代码:

Private Sub cmdprint_Click() Dim sdsheet As Worksheet, ersheet As Worksheet Set sdsheet = Workbooks("HD Project.xls").Sheets("HelpdeskLogg") Set ersheet = Workbooks("HD Project.xls").Sheets("report") dlr = sdsheet.Cells(Rows.Count, 1).End(xlUp).Row rlr = ersheet.Cells(Rows.Count, 1).End(xlUp).Row y = 2 For x = 2 To dlr If UCase(sdsheet.Cells(x, 6)) = "Inbound" And CDate(sdsheet.Cells(x, 3)) >= CDate(Me.txtdatestart) And CDate(sdsheet.Cells(x, 3)) <= CDate(Me.txtdateend) Then ersheet.Cells(y, 1) = CDate(sdsheet.Cells(x, 3)) ersheet.Cells(y, 2) = sdsheet.Cells(x, 6) ersheet.Cells(y, 3) = sdsheet.Cells(x, 7) ersheet.Cells(y, 4) = sdsheet.Cells(x, 8) ersheet.Cells(y, 5) = sdsheet.Cells(x, 9) ersheet.Cells(y, 6) = sdsheet.Cells(x, 10) ersheet.Cells(y, 7) = sdsheet.Cells(x, 11) ersheet.Cells(y, 8) = sdsheet.Cells(x, 12) ersheet.Cells(y, 9) = sdsheet.Cells(x, 13) y = y + 1 'On Error Resume Next End If Next x Dim Lastrow As Integer Lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row Set printa = ersheet.Range("A1:i" & Lastrow) printa.PrintOut Sheets("report").Range("a2:i999").ClearContents End Sub 

尝试改变:

UCase(sdsheet.Cells(x, 6)) = "Inbound"

 UCase(sdsheet.Cells(x, 6)) = "INBOUND" 

尝试改变:

UCase(sdsheet.Cells(x,6))=“入站”

UCase(sdsheet.Cells(x,6))=“INBOUND”

这工作。 谢谢你的帮忙,barrleajo