messages for conditions;If/and/or

bgonen

Active Member
Joined
Oct 24, 2009
Messages
264
I am trying to add a procedure before the one below that will compare cell/s A10, A11, A12 etc with K10,K11,K12 respectively
For example; if A10 is less than K10 then message:"CC is missing"
If A10 in any of the sheets (array) does not match with sheet4 column A then message:"CC is invalid"
Only after that the procedure in blue (below) can be executed.


Sub MatchCopyPaste2()
Dim LR As Long, i As Long, ws As Worksheet
Application.ScreenUpdating = False
Sheets("DataByCC").UsedRange.Offset(1).ClearContents
For Each ws In Sheets(Array("P_ROLL", "Travel"))
With ws
LR = .Range("A" & Rows.Count).End(xlUp).Row
For i = 10 To LR
With .Range("A" & i)
If IsNumeric(Application.Match(.Value, .Columns("A"), 0)) Then
.EntireRow.SpecialCells(12).Copy Destination:=Sheets("DataByCC").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
End With
Next i
End With
Next ws
End Sub
 

Excel Facts

Difference between two dates
Secret function! Use =DATEDIF(A2,B2,"Y")&" years"&=DATEDIF(A2,B2,"YM")&" months"&=DATEDIF(A2,B2,"MD")&" days"

BrianB

Well-known Member
Joined
Feb 17, 2003
Messages
8,127
Something like this
Code:
'========================================================================================
'- WORKSHEET ERROR TRAPPING
'========================================================================================
Sub test()
    '------------------------------------------------------------------------------------
    'if A10 is less than K10 then message:"CC is missing"
    With Worksheets("Sheet4")
        If .Range("A10").Value < .Range("K10").Value Then
            MsgBox ("CC is missing (A10 < K10)")
            Application.Goto .Range("A10")
            Exit Sub
        End If
    End With
    '------------------------------------------------------------------------------------
    'If A10 in any of the sheets (array) does not match with sheet4 column A
    'then message:"CC is invalid"
    x = Worksheets("Sheet4").Range("A10").Value
    For Each s In Sheets(Array("Sheet1", "Sheet2", "Sheet3", "Sheet4"))
        If s.Name <> "Sheet4" And s.Range("A10").Value <> x Then
            MsgBox ("CC is invalid " & vbCr _
                & s.Name & " Range A10 should = " & x)
            Application.Goto Worksheets(s.Name).Range("A10")
            Exit Sub
        End If
    Next
    '------------------------------------------------------------------------------------
    '- REST OF CODE
    MsgBox ("No Errors")
End Sub
'========================================================================================
 
Master Excel Bundle

Excel contains over 450 functions, with more added every year. That’s a huge number, so where should you start? Right here with this bundle.

Forum statistics

Threads
1,168,031
Messages
5,856,937
Members
431,841
Latest member
jaybeem

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Top