Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
Hi,
I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
Hi,
Using the SpecialCells function you can delete all rows that match the criteria #N/A ... see Ron De Bruin's excellant site on this... http://www.rondebruin.nl/specialcells.htm HTH Philip "Steve" wrote: Hi, I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
Hi Philip,
Thanks for that, I can see potential... Although I have 66,000 rows of data to deal with! I'll take a look, but if anyone has any other ideas it would be appreciated. Steve "Philip" wrote: Hi, Using the SpecialCells function you can delete all rows that match the criteria #N/A ... see Ron De Bruin's excellant site on this... http://www.rondebruin.nl/specialcells.htm HTH Philip "Steve" wrote: Hi, I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
you can use the SpecialCells function to return all the cells that have
'#N/A' in them, then delete those rows? HTH Philip "Steve" wrote: Hi, I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
Sub deletedata()
DeleteByAutoFilter 2, "--" DeleteByAutoFilter 2, "#N/A" End Sub Private Sub DeleteByAutoFilter(Col As Long, criteria As String) Dim iLastRow As Long Dim i As Long Dim rng As Range Rows(1).Insert Cells(1, Col).Value = "temp" iLastRow = Cells(Rows.Count, Col).End(xlUp).Row Set rng = Cells(1, Col).Resize(iLastRow) rng.AutoFilter field:=1, Criteria1:=criteria rng.SpecialCells(xlCellTypeVisible).EntireRow.Dele te Set rng = Nothing End Sub -- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "Steve" wrote in message ... Hi Philip, Thanks for that, I can see potential... Although I have 66,000 rows of data to deal with! I'll take a look, but if anyone has any other ideas it would be appreciated. Steve "Philip" wrote: Hi, Using the SpecialCells function you can delete all rows that match the criteria #N/A ... see Ron De Bruin's excellant site on this... http://www.rondebruin.nl/specialcells.htm HTH Philip "Steve" wrote: Hi, I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
Hi Bob,
I'm trying to see where it chooses the right column to perform the filter! Could you poss put some comments in to explain to a dumba$$ like me? Rgds Steve "Bob Phillips" wrote: Sub deletedata() DeleteByAutoFilter 2, "--" DeleteByAutoFilter 2, "#N/A" End Sub Private Sub DeleteByAutoFilter(Col As Long, criteria As String) Dim iLastRow As Long Dim i As Long Dim rng As Range Rows(1).Insert Cells(1, Col).Value = "temp" iLastRow = Cells(Rows.Count, Col).End(xlUp).Row Set rng = Cells(1, Col).Resize(iLastRow) rng.AutoFilter field:=1, Criteria1:=criteria rng.SpecialCells(xlCellTypeVisible).EntireRow.Dele te Set rng = Nothing End Sub -- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "Steve" wrote in message ... Hi Philip, Thanks for that, I can see potential... Although I have 66,000 rows of data to deal with! I'll take a look, but if anyone has any other ideas it would be appreciated. Steve "Philip" wrote: Hi, Using the SpecialCells function you can delete all rows that match the criteria #N/A ... see Ron De Bruin's excellant site on this... http://www.rondebruin.nl/specialcells.htm HTH Philip "Steve" wrote: Hi, I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Delete ROW if COLUMN = data
It is passed by parameter, I used 2 (B) in my example.
-- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "Steve" wrote in message ... Hi Bob, I'm trying to see where it chooses the right column to perform the filter! Could you poss put some comments in to explain to a dumba$$ like me? Rgds Steve "Bob Phillips" wrote: Sub deletedata() DeleteByAutoFilter 2, "--" DeleteByAutoFilter 2, "#N/A" End Sub Private Sub DeleteByAutoFilter(Col As Long, criteria As String) Dim iLastRow As Long Dim i As Long Dim rng As Range Rows(1).Insert Cells(1, Col).Value = "temp" iLastRow = Cells(Rows.Count, Col).End(xlUp).Row Set rng = Cells(1, Col).Resize(iLastRow) rng.AutoFilter field:=1, Criteria1:=criteria rng.SpecialCells(xlCellTypeVisible).EntireRow.Dele te Set rng = Nothing End Sub -- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "Steve" wrote in message ... Hi Philip, Thanks for that, I can see potential... Although I have 66,000 rows of data to deal with! I'll take a look, but if anyone has any other ideas it would be appreciated. Steve "Philip" wrote: Hi, Using the SpecialCells function you can delete all rows that match the criteria #N/A ... see Ron De Bruin's excellant site on this... http://www.rondebruin.nl/specialcells.htm HTH Philip "Steve" wrote: Hi, I am trying to stick the only manual part of my function in to my macro. Once a load of data has been pasted in to a sheet, a formula in Column J compares dumped data and returns the country code applicable, alternatively it puts "---" if there is no code and a #N/A if it is not found. I need to; Delete all ROWs which have "---" in column J Currently the manual way I do it is; - Sort Ascending, so all data follows on. - Filter on "---" - Highlight ROW 1 to whatever, Delete Rows - Repeat for #N/A What would be good would be if I could automate this. Autofilter, Custom Filter "---" OR "#N/A" This now shows only what I want to delete, I want to delete all these rows (leaving header information intact). But it mustn't delete anything in between the filtered rows obviously! HELP!!! |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
delete data from column | Excel Discussion (Misc queries) | |||
Delete ROW if COLUMN = data | Excel Programming | |||
Delete row where there is duplicate data in Column E | New Users to Excel | |||
DELETE COLUMNS ONLY IF THERE IS NO DATA IN THE WHOLE COLUMN | Excel Programming | |||
Find and Delete data in a column | Excel Programming |