Conditional Row insertion problem
I'm a newbie to VBA, have been teaching myself the past week, and I'
stuck on the last step of a complex macro I've been writing. What want to do is insert a row (or more than one row in some cases depending on the value returned by one column in the worksheet. Thi function returns either 1, 2, or 3 for each earlier line of data, and want to insert a row after each cell in column D that contains a 2, an insert two rows after each cell in column D that contains a 3. I'm having a tough time figuring out how to go about this. The onl stab I've made at it is the following, which doesn't even do anything range("D:D").Select If Value = 2 Then Selection.EntireRow.Insert (xlShiftDown) ElseIf Value = 3 Then Selection.EntireRow.Insert (xlShiftDown) Selection.EntireRow.Insert (xlShiftDown) End If I would greatly appreciate any assistance with this. thank you -- Message posted from http://www.ExcelForum.com |
Conditional Row insertion problem
Of course it doesn't do anything. There are several problems:
1) you are trying to select a column, not a row (and not doing i correctly in any case) 2) you need .Value instead of Value You want something like this: select the cell you want to check, then thisRow = ActiveCell.Row if cells(thisRow, "D").Value = 2 then Cells(thisRow, "D").entireRow.Insert (xlShiftDown) et ceter -- Message posted from http://www.ExcelForum.com |
Conditional Row insertion problem
Well that worked great (once I realized that having a non-numeric valu
in the last cell was what was giving me an error), thank you Norma jones -- Message posted from http://www.ExcelForum.com |
All times are GMT +1. The time now is 01:40 AM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com