Macro Help - Looping & Deleting

  • Thread starter Thread starter Excel Hates Me
  • Start date Start date
E

Excel Hates Me

Hi, could someone please help me with this macro? It only works on the
active sheet when the "if" condition is met; otherwise it deletes all
the columns to the right of column R. It does nothing to the other
sheets. Sorry, I'll get better at this eventually.

Thanks!

-----

Sub DeleteColumnsAll()

Dim ws As Worksheet

For Each ws In ActiveWorkbook.Worksheets

If InStr(Range("R2").Text, "Apple") Then
Columns("AC:AW").Delete
Else: Columns("S:AB").Delete
End If

Next ws

End Sub
 
Hi, could someone please help me with this macro? It only works on the
active sheet when the "if" condition is met; otherwise it deletes all
the columns to the right of column R. It does nothing to the other
sheets. Sorry, I'll get better at this eventually.

Thanks!

-----

Sub DeleteColumnsAll()

     Dim ws As Worksheet

     For Each ws In ActiveWorkbook.Worksheets

            If InStr(Range("R2").Text, "Apple") Then
            Columns("AC:AW").Delete
            Else: Columns("S:AB").Delete
            End If

     Next ws

End Sub

Actually, Excel loves you (it just has difficulty expressing that
love)
You need to qualify your references:

Sub ExcelLovesYou()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
With ws
If InStr(.Range("R2").Text, "Apple") Then
.Columns("AC:AW").Delete
Else
.Columns("S:AB").Delete
End If
End With
Next ws
End Sub
 
Thank you James!

It does seem quite possible that I wouldn't understand Excel's
expressions anyway :)
 
Back
Top