【问题标题】:Use VBA Macro to print conditionally使用 VBA 宏有条件地打印
【发布时间】:2014-04-23 20:56:50
【问题描述】:

提前感谢您的帮助。我有以下宏工作:

Sub Macro1()

If Cells(3, 4) > 0 Then
Sheets("A-Lawn").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End If
End Sub

我想做的是设置一个条件,如果第 4 列中的金额大于 0 美元,那么它会打印他们各自的 Excel 表。下面是列标题和我的第一个供应商的信息。

Contractor  Sheet Name   PPW             Advances
Allen B     Abelcher     $7,947.60    $500.00

因此,如果第 4 列 > 0,则打印第 2 列中列出的表格。我对此非常陌生,感谢您提供的任何帮助。

【问题讨论】:

    标签: excel vba printing conditional-statements


    【解决方案1】:

    假设您在行中有一个工作表名称列表,以下将查看所有行并打印所需的工作表:

        Sub Macro1()
        Dim lLastRow    As Long
        Dim i           As Integer
        lLastRow = Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
        For i = 2 To lLastRow
    
            If Cells(i, 4) > 0 Then
                Sheets(Cells(i, 2).value).PrintOut copies:=1, collate:=True
            End If
        Next i
    End Sub
    

    【讨论】:

      猜你喜欢
      • 2019-08-06
      • 2022-07-07
      • 2018-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-14
      • 1970-01-01
      相关资源
      最近更新 更多