Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 38
Default Execute code on a range of cells, then move down and do again?

I have the following code to clear a range of cells. Now I need it to move
down 15 rows and do it again, what do I need to add in to the code?

Range ( _"B9:B21,F9:F21,A20:C21,C19"_ ).Select
Range ("C19") . Activate
Selection.ClearContents

IF Range ("B9" + 15) = 0 THEN
'do again for the cells starting from B9+15
ELSE
End IF
End Sub






TIA

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,986
Default Execute code on a range of cells, then move down and do again?

There are other ways to do it, but for the description you gave, this should
cover it.

Sub clrCont()
Dim sh As Worksheet
sh = ActiveSheet
sh.Range("B9:B19").ClearContents
sh.Range("F9:F21").ClearContents
sh.Range("A20:C21").ClearContents
If sh.Range("B24").Value = 0 Then
sh.Range("B24:B35").ClearContents
sh.Range("F24:F37").ClearContents
sh.Range("A38:C39").ClearContents
End If
End Sub

"BABs" wrote:

I have the following code to clear a range of cells. Now I need it to move
down 15 rows and do it again, what do I need to add in to the code?

Range ( _"B9:B21,F9:F21,A20:C21,C19"_ ).Select
Range ("C19") . Activate
Selection.ClearContents

IF Range ("B9" + 15) = 0 THEN
'do again for the cells starting from B9+15
ELSE
End IF
End Sub






TIA

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 38
Default Execute code on a range of cells, then move down and do again?

JLGWhiz,
Thx for the reply. I was going to do this, but I actually have a lot more
ranges and possibly hundreds of repetitions of this code.
What I would like to do is something like:

With ActiveSheet

Dim s1 As Integer
Dim s2 As Integer
Dim s3 As Integer
Dim s4 As Integer
Dim s5 As Integer
Dim s6 As Integer
Dim s7 As Integer
Dim s8 As Integer
Dim s9 As Integer
Dim s10 As Integer

s1 = 9
s2 = 21
s3 = 20
s4 = 12
s5 = 15
s6 = 16
s7 = 13
s8 = 14
s9 = 10
s10 = 19

Line1:

.Range("B & s1:B & s2,F & s1:F & s2,Q & s1:Q & s2,A & s3:C & s2,C & s2,D
& s3:E & s3,G & s3:R & s2,G & s4:R & s4,G & s5:P & s6,R & s5,H & s7:I & s8,J
& s8:K & s8,A & s9:E & s9,G & s1,C & s10").Select
.Selection.ClearContents

s1 = s1 + 15
s2 = s2 + 15
s3 = s3 + 15
s4 = s4 + 15
s5 = s5 + 15
s6 = s6 + 15
s7 = s7 + 15
s8 = s8 + 15
s9 = s9 + 15
s10 = s10 + 15

If Range("B & s1") 0 Then
GoTo Line1
Else
End If
End With




But I can't seem to get the syntax/punctuation to work right.
Where am I going wrong?






"JLGWhiz" wrote:

There are other ways to do it, but for the description you gave, this should
cover it.

Sub clrCont()
Dim sh As Worksheet
sh = ActiveSheet
sh.Range("B9:B19").ClearContents
sh.Range("F9:F21").ClearContents
sh.Range("A20:C21").ClearContents
If sh.Range("B24").Value = 0 Then
sh.Range("B24:B35").ClearContents
sh.Range("F24:F37").ClearContents
sh.Range("A38:C39").ClearContents
End If
End Sub

"BABs" wrote:

I have the following code to clear a range of cells. Now I need it to move
down 15 rows and do it again, what do I need to add in to the code?

Range ( _"B9:B21,F9:F21,A20:C21,C19"_ ).Select
Range ("C19") . Activate
Selection.ClearContents

IF Range ("B9" + 15) = 0 THEN
'do again for the cells starting from B9+15
ELSE
End IF
End Sub






TIA

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 38
Default Execute code on a range of cells, then move down and do again?

Found another solution:

Dim sh As Worksheet
Set sh = ActiveSheet

Dim rng1 As Range
Set rng1 = sh.Range("B9")

Dim rng As Range
Set rng =
sh.Range("b9:b21,f9:f21,q9:q21,a20:c21,d20:e20,g20 :r21,g12:r12,g15:p16,r15,h13:i14,j14:k14,a10:e10,g 9,c19")
Line1:
rng.ClearContents

Set rng = rng.Offset(15, 0)
Set rng1 = rng1.Offset(15, 0)

If rng1 = "0" Then
GoTo Line1
Else
End If


too easy!
Thx your message got me thinking which led to this.
learning is fun.............
















"JLGWhiz" wrote:

There are other ways to do it, but for the description you gave, this should
cover it.

Sub clrCont()
Dim sh As Worksheet
sh = ActiveSheet
sh.Range("B9:B19").ClearContents
sh.Range("F9:F21").ClearContents
sh.Range("A20:C21").ClearContents
If sh.Range("B24").Value = 0 Then
sh.Range("B24:B35").ClearContents
sh.Range("F24:F37").ClearContents
sh.Range("A38:C39").ClearContents
End If
End Sub

"BABs" wrote:

I have the following code to clear a range of cells. Now I need it to move
down 15 rows and do it again, what do I need to add in to the code?

Range ( _"B9:B21,F9:F21,A20:C21,C19"_ ).Select
Range ("C19") . Activate
Selection.ClearContents

IF Range ("B9" + 15) = 0 THEN
'do again for the cells starting from B9+15
ELSE
End IF
End Sub






TIA

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Move thur range of cells with enter key in excel Jason Excel Discussion (Misc queries) 1 January 9th 10 05:48 PM
VBA Code to Automatically move text into above cells? mj_bowen Excel Discussion (Misc queries) 3 January 2nd 10 11:30 AM
Spell Check range and move to active cells Jay[_21_] Excel Programming 3 May 16th 06 11:04 PM
Select range of cells and move Dan Excel Programming 1 March 4th 05 10:33 PM
How do I reference the same cell as I move through range of cells. MikeShep Excel Worksheet Functions 1 February 7th 05 12:12 PM


All times are GMT +1. The time now is 03:49 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"