View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
James Ravenswood James Ravenswood is offline
external usenet poster
 
Posts: 143
Default Macro Help - Looping & Deleting

On Aug 12, 7:22*pm, Excel Hates Me wrote:
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