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

Using Function Arguments with nested formulas
If writing INDEX in Func. Arguments, type MATCH(. Use the mouse to click inside MATCH in the formula bar. Dialog switches to MATCH.
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
'========================================================================================
 
Upvote 0

Forum statistics

Threads
1,213,552
Messages
6,114,278
Members
448,560
Latest member
Torchwood72

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
Back
Top