2017-01-19 94 views
0

在VBA中,如何在打印之前將最小值應用於單元格,並檢查2個單元格值是否匹配?我已經嘗試過我的自我,最小值工作單元比較沒有?如何將2個變量應用於BeforePrint?

Private Sub Workbook_BeforePrint(Cancel As Boolean) 

    If Sheets("PURCHASE_RECEIPT").Range("G31").Value < "0.01" Then 
     [g32] = IIf([g27] = [g31], "Yes", "No") 
    If ([g32] = "No") Then 
     Cancel = True 
     MsgBox ("Please fill in payment method fields before printing and check that the totals match") 

    End If 

End Sub 
+2

關閉兩個'如果.... logic'使用'結束If'啓動另一個'If..' – harun24hr

+0

之前,這是不清楚你在問什麼。如果你遇到編譯/語法錯誤,你應該把它包含在你的問題中。 –

+0

Hi @ Mat'sMug,感謝您看看這個! 我沒有收到任何語法錯誤,這就是爲什麼我碰壁了。完整的故事是... 我有一個Excel表格是一個收據,填寫了2個不同的自動彙總,我需要它來確保第一個「總計」單元格大於0.01,然後將該單元格與其他單元格進行比較「總計」並檢查它們是否匹配,然後再打印。不過考慮一下,因爲它們是汽車總數,它只需要確保總數匹配,然後它允許打印出來,但是這仍然是我無法工作的位?再次感謝 – LukeRhys

回答

0

試試這個....

Private Sub Workbook_BeforePrint(Cancel As Boolean) 

With Sheets("PURCHASE_RECEIPT") 
    If .Range("G31").Value < 0.01 Or .Range("G27").Value <> .Range("G31").Value Then 
     Cancel = True 
     MsgBox ("Please fill in payment method fields before printing and check that the totals match") 
    End If 
End With 

末次

+0

完美,非常感謝。我不得不把「End Sub」放在最底部,但它確實是我需要的! – LukeRhys