View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Chip Pearson Chip Pearson is offline
external usenet poster
 
Posts: 7,247
Default Insert number of rows based on criteria


Try some code like the following:

Sub AAA()
Dim RowNdx As Long
Dim LastRow As Long
Dim N As Long
Dim J As Long
Dim FirstRow As Long
Dim WS As Worksheet
Dim R As Range
Set WS = Worksheets("Sheet1") '<<< CHANGE TO WORKSHEET
FirstRow = 1 '<<< CHANGE TO FIRST ROW OF DATA
With WS
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
For RowNdx = LastRow To FirstRow Step -1
Set R = WS.Cells(RowNdx, "S")
N = Application.CountA(R.EntireRow.Cells(1, "S").Resize(1, 8))
For J = 1 To N
R(2, 1).EntireRow.Rows.Insert
Next J
Next RowNdx
End Sub

Change the lines marked with <<< to values appropriate to your
worksheet.

Cordially,
Chip Pearson
Microsoft Most Valuable Professional
Excel Product Group, 1998 - 2009
Pearson Software Consulting, LLC
www.cpearson.com
(email on web site)




On Mon, 5 Jan 2009 06:49:19 -0800 (PST), S Davis
wrote:

Hello,

Is there any way to insert a number of rows based on criteria?

Sample data:
A------------S---T---U-....
Bill---------(_)-(X)-(_)
Bob--------(_)-(_)-(_)
Joe---------(X)-(X)-(X)
Murph ....

(Where (_) denotes a blank cell)

Desired presentation:

Bill---------(_)-(X)-(_)
(blank row)
Bob--------(_)-(_)-(_)
Joe---------(X)-(X)-(X)
(blank row)
(blank row)
(blank row)
Murph ....

I have a list of names in column A, and a list of criteria names in S1
- Z1. For each name (ie. Bill), criteria is defined as met with any
marking in that column (ie. T1 = "X", or "o", or anything nonblank)

What I would like to do then is for every row, look at the range S-Z,
count the number of nonblank cells, and then insert that number of
nonblank rows directly underneath. Then move onto the next name until
the list is exhausted.

Ideally, though this may be asking too much, each row that is inserted
should then have the name of the criteria inserted into AA. So, for
instance, in the sample data above, if Bill has an X under column T,
and T1 reads "Car", the data should look like this:

A------------S---T---U-....AA
Bill---------(_)-(X)-(_)
---------------------------....Car
Bob....


Any help and a walkthrough of the code would be so much appreciated!
Thanks