Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi There,
Chip's code to delete blank rows. Situation: If my first data starts appears in row 5 and row 1-4 are blank, it will delete all blank lines but does not delete row 1-4. They are not part of the usedrange apparently. (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) Can I get rid of those lines as well? Cheers Sige Public Sub DeleteBlankRows() Dim R As Long Dim C As Range Dim Rng As Range On Error GoTo EndMacro Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count 1 Then Set Rng = Selection Else Set Rng = ActiveSheet.UsedRange.Rows End If For R = Rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(Rng.Rows(R).E ntireRow) = 0 Then Rng.Rows(R).EntireRow.Delete End If Next R EndMacro: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thx William,
Much Better!! |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Sige,
(I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) In fact the usedrange starts at the first populated or formatted cell. In an unused worksheet, format or populate a cell other than A1. In the intermediate window type: ? UsedRange.Address and see the result. Can I get rid of those lines as well? Try replacing: For R = Rng.Rows.Count To 1 Step -1 with For R = Rng.Row + Rng.Rows.Count - 1 To 1 Step -1 --- Regards, Norman "Sige" wrote in message oups.com... Hi There, Chip's code to delete blank rows. Situation: If my first data starts appears in row 5 and row 1-4 are blank, it will delete all blank lines but does not delete row 1-4. They are not part of the usedrange apparently. (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) Can I get rid of those lines as well? Cheers Sige Public Sub DeleteBlankRows() Dim R As Long Dim C As Range Dim Rng As Range On Error GoTo EndMacro Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count 1 Then Set Rng = Selection Else Set Rng = ActiveSheet.UsedRange.Rows End If For R = Rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(Rng.Rows(R).E ntireRow) = 0 Then Rng.Rows(R).EntireRow.Delete End If Next R EndMacro: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Perfect!
Sige |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
why do i get an object required error when i try this, ? UsedRange.Address,
in the immediate window? -- Gary "Norman Jones" wrote in message ... Hi Sige, (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) In fact the usedrange starts at the first populated or formatted cell. In an unused worksheet, format or populate a cell other than A1. In the intermediate window type: ? UsedRange.Address and see the result. Can I get rid of those lines as well? Try replacing: For R = Rng.Rows.Count To 1 Step -1 with For R = Rng.Row + Rng.Rows.Count - 1 To 1 Step -1 --- Regards, Norman "Sige" wrote in message oups.com... Hi There, Chip's code to delete blank rows. Situation: If my first data starts appears in row 5 and row 1-4 are blank, it will delete all blank lines but does not delete row 1-4. They are not part of the usedrange apparently. (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) Can I get rid of those lines as well? Cheers Sige Public Sub DeleteBlankRows() Dim R As Long Dim C As Range Dim Rng As Range On Error GoTo EndMacro Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count 1 Then Set Rng = Selection Else Set Rng = ActiveSheet.UsedRange.Rows End If For R = Rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(Rng.Rows(R).E ntireRow) = 0 Then Rng.Rows(R).EntireRow.Delete End If Next R EndMacro: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Gary,
? UsedRange.Address Should be: ?ActiveSheet.UsedRange.Address I typed rather than copy / pasted! Thank you. --- Regards, Norman "Gary Keramidas" wrote in message ... why do i get an object required error when i try this, ? UsedRange.Address, in the immediate window? -- Gary "Norman Jones" wrote in message ... Hi Sige, (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) In fact the usedrange starts at the first populated or formatted cell. In an unused worksheet, format or populate a cell other than A1. In the intermediate window type: ? UsedRange.Address and see the result. Can I get rid of those lines as well? Try replacing: For R = Rng.Rows.Count To 1 Step -1 with For R = Rng.Row + Rng.Rows.Count - 1 To 1 Step -1 --- Regards, Norman "Sige" wrote in message oups.com... Hi There, Chip's code to delete blank rows. Situation: If my first data starts appears in row 5 and row 1-4 are blank, it will delete all blank lines but does not delete row 1-4. They are not part of the usedrange apparently. (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) Can I get rid of those lines as well? Cheers Sige Public Sub DeleteBlankRows() Dim R As Long Dim C As Range Dim Rng As Range On Error GoTo EndMacro Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count 1 Then Set Rng = Selection Else Set Rng = ActiveSheet.UsedRange.Rows End If For R = Rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(Rng.Rows(R).E ntireRow) = 0 Then Rng.Rows(R).EntireRow.Delete End If Next R EndMacro: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Maybe in the "Intermediate" window you don't need to qualify it <g. I
don't have one, so I can't say. -- Regards, Tom Ogilvy "Norman Jones" wrote in message ... Hi Gary, ? UsedRange.Address Should be: ?ActiveSheet.UsedRange.Address I typed rather than copy / pasted! Thank you. --- Regards, Norman "Gary Keramidas" wrote in message ... why do i get an object required error when i try this, ? UsedRange.Address, in the immediate window? -- Gary "Norman Jones" wrote in message ... Hi Sige, (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) In fact the usedrange starts at the first populated or formatted cell. In an unused worksheet, format or populate a cell other than A1. In the intermediate window type: ? UsedRange.Address and see the result. Can I get rid of those lines as well? Try replacing: For R = Rng.Rows.Count To 1 Step -1 with For R = Rng.Row + Rng.Rows.Count - 1 To 1 Step -1 --- Regards, Norman "Sige" wrote in message oups.com... Hi There, Chip's code to delete blank rows. Situation: If my first data starts appears in row 5 and row 1-4 are blank, it will delete all blank lines but does not delete row 1-4. They are not part of the usedrange apparently. (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) Can I get rid of those lines as well? Cheers Sige Public Sub DeleteBlankRows() Dim R As Long Dim C As Range Dim Rng As Range On Error GoTo EndMacro Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count 1 Then Set Rng = Selection Else Set Rng = ActiveSheet.UsedRange.Rows End If For R = Rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(Rng.Rows(R).E ntireRow) = 0 Then Rng.Rows(R).EntireRow.Delete End If Next R EndMacro: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Gary
You must use it like this ? activesheet.UsedRange.Address -- Regards Ron de Bruin http://www.rondebruin.nl "Gary Keramidas" wrote in message ... why do i get an object required error when i try this, ? UsedRange.Address, in the immediate window? -- Gary "Norman Jones" wrote in message ... Hi Sige, (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) In fact the usedrange starts at the first populated or formatted cell. In an unused worksheet, format or populate a cell other than A1. In the intermediate window type: ? UsedRange.Address and see the result. Can I get rid of those lines as well? Try replacing: For R = Rng.Rows.Count To 1 Step -1 with For R = Rng.Row + Rng.Rows.Count - 1 To 1 Step -1 --- Regards, Norman "Sige" wrote in message oups.com... Hi There, Chip's code to delete blank rows. Situation: If my first data starts appears in row 5 and row 1-4 are blank, it will delete all blank lines but does not delete row 1-4. They are not part of the usedrange apparently. (I always thought usedrange = A1:LAST CELL, but seems to be FIRST CELL:LASTCELL) Can I get rid of those lines as well? Cheers Sige Public Sub DeleteBlankRows() Dim R As Long Dim C As Range Dim Rng As Range On Error GoTo EndMacro Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count 1 Then Set Rng = Selection Else Set Rng = ActiveSheet.UsedRange.Rows End If For R = Rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(Rng.Rows(R).E ntireRow) = 0 Then Rng.Rows(R).EntireRow.Delete End If Next R EndMacro: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Delete all blank rows... | Excel Discussion (Misc queries) | |||
Delete blank rows | Excel Programming | |||
Delete blank rows | Excel Programming | |||
Delete blank row only if 2 consecutive blank rows | Excel Programming | |||
help delete blank rows | Excel Programming |