View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Muhammed Rafeek M Muhammed Rafeek M is offline
external usenet poster
 
Posts: 179
Default Insert rows (1 to 4) if the cell value equals a fixed word

Hi
Try this one

Sub Joy()

With ActiveSheet

For Each cell In .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp))
If Trim(ActiveCell.Value) = "" Then Exit Sub
ActiveCell.Offset(1, 0).Range("A1").Select
Selection.EntireRow.Insert
Selection.EntireRow.Insert
Selection.EntireRow.Insert
ActiveCell.Offset(-1, 0).Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(-2, 0).Range("A1").Select
Application.CutCopyMode = False
ActiveCell.Value = ActiveCell.Value & " Group A"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.Value = ActiveCell.Value & " Group B"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.Value = ActiveCell.Value & " Group C"
ActiveCell.Offset(1, 0).Range("A1").Select

Next
End With
End Sub


"Joy" wrote:

I am looking for a macro to run once the fixed word in cell A13 for example
equals to €śHealth€ť and after the macro found the that cell will insert 1 to 3
rows and writing the following;
Cell A14 = €śHealth group A€ť --- This should be first row to be inserted
Cell A15 = €śHealth group B€ť --- This should be 2nd row to be inserted
Cell A16 = €śHealth group C€ť --- This should be 3rd row to inserted.
And than the macro should also read the information in Cell B13 and copy it
in B14 where the first row has been inserted and so on till the last row.

A B C D E
13 Health 110 1101 11011 100
14 Health group A 110 1101 11011 100
15 Health group B 110 1101 11011 100
16 Health group C 110 1101 11011 100


Any help will be very much appreciated