![]() |
List Box Visible Rows Only
having some (a lot) of trouble with this.
I know it can be done and I think I've exausted my searches (and my patience). I have a list box on a UserForm I need to fill the list box with a filtered range of data on the active worksheet. Header row is row 5. Data starts on row 6 For example, after a filter, only rows (5), 6, 8 & 10 are visible. How can I populate the list box with the data for columns A, B & C with only rows 6, 8 & 10?? TIA, John |
List Box Visible Rows Only
Dim rng as Range
On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value Next End if -- Regards, Tom Ogilvy "John Wilson" wrote in message ... having some (a lot) of trouble with this. I know it can be done and I think I've exausted my searches (and my patience). I have a list box on a UserForm I need to fill the list box with a filtered range of data on the active worksheet. Header row is row 5. Data starts on row 6 For example, after a filter, only rows (5), 6, 8 & 10 are visible. How can I populate the list box with the data for columns A, B & C with only rows 6, 8 & 10?? TIA, John |
List Box Visible Rows Only
Tom,
A had actually found (and tried) that code you supplied in the Google archives. What I cant do with it is modify it to include three columns. My list box is three columns wide. I wanted to populate the List box with what's in Columns A thru C of the visible rows only?? John Tom Ogilvy wrote: Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value Next End if -- Regards, Tom Ogilvy "John Wilson" wrote in message ... having some (a lot) of trouble with this. I know it can be done and I think I've exausted my searches (and my patience). I have a list box on a UserForm I need to fill the list box with a filtered range of data on the active worksheet. Header row is row 5. Data starts on row 6 For example, after a filter, only rows (5), 6, 8 & 10 are visible. How can I populate the list box with the data for columns A, B & C with only rows 6, 8 & 10?? TIA, John |
List Box Visible Rows Only
Dim rng as Range
On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value listbox1.List(Listbox1.Listcount-1,1) = cell.offset(0,1) listbox1.List(Listbox1.Listcount-1,2) = cell.Offset(0,2) Next End if I believe you can also do this: Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value ' haven't tried this, but this is how I understand help listbox1.column(1) = cell.offset(0,1) listbox1.column(2) = cell.Offset(0,2) Next End if -- Regards, Tom Ogilvy "Tom Ogilvy" wrote in message ... Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value Next End if -- Regards, Tom Ogilvy "John Wilson" wrote in message ... having some (a lot) of trouble with this. I know it can be done and I think I've exausted my searches (and my patience). I have a list box on a UserForm I need to fill the list box with a filtered range of data on the active worksheet. Header row is row 5. Data starts on row 6 For example, after a filter, only rows (5), 6, 8 & 10 are visible. How can I populate the list box with the data for columns A, B & C with only rows 6, 8 & 10?? TIA, John |
List Box Visible Rows Only
Tom,
The second example didn't work..... "Could not set the Column property. Invalid property array index" (Win 98 / Excel 2000 SR-3) But the first one worked like a charm. THANK YOU!!! John Tom Ogilvy wrote: Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value listbox1.List(Listbox1.Listcount-1,1) = cell.offset(0,1) listbox1.List(Listbox1.Listcount-1,2) = cell.Offset(0,2) Next End if I believe you can also do this: Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value ' haven't tried this, but this is how I understand help listbox1.column(1) = cell.offset(0,1) listbox1.column(2) = cell.Offset(0,2) Next End if -- Regards, Tom Ogilvy "Tom Ogilvy" wrote in message ... Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value Next End if -- Regards, Tom Ogilvy "John Wilson" wrote in message ... having some (a lot) of trouble with this. I know it can be done and I think I've exausted my searches (and my patience). I have a list box on a UserForm I need to fill the list box with a filtered range of data on the active worksheet. Header row is row 5. Data starts on row 6 For example, after a filter, only rows (5), 6, 8 & 10 are visible. How can I populate the list box with the data for columns A, B & C with only rows 6, 8 & 10?? TIA, John |
List Box Visible Rows Only
Thanks for testing it. Been meaning to for a while now, but haven't gotten
around to it. I will have to re-read the help and work out the additional argument needed. -- Regards, Tom Ogilvy "John Wilson" wrote in message ... Tom, The second example didn't work..... "Could not set the Column property. Invalid property array index" (Win 98 / Excel 2000 SR-3) But the first one worked like a charm. THANK YOU!!! John Tom Ogilvy wrote: Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value listbox1.List(Listbox1.Listcount-1,1) = cell.offset(0,1) listbox1.List(Listbox1.Listcount-1,2) = cell.Offset(0,2) Next End if I believe you can also do this: Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value ' haven't tried this, but this is how I understand help listbox1.column(1) = cell.offset(0,1) listbox1.column(2) = cell.Offset(0,2) Next End if -- Regards, Tom Ogilvy "Tom Ogilvy" wrote in message ... Dim rng as Range On Error Resume Next set rng = Range(Cells(6,1),Cells(rows.count,1).End(xlup)).Sp ecialCells(xlVisible) On Error goto 0 if not rng is nothing then for each cell in rng listbox1.AddItem cell.Value Next End if -- Regards, Tom Ogilvy "John Wilson" wrote in message ... having some (a lot) of trouble with this. I know it can be done and I think I've exausted my searches (and my patience). I have a list box on a UserForm I need to fill the list box with a filtered range of data on the active worksheet. Header row is row 5. Data starts on row 6 For example, after a filter, only rows (5), 6, 8 & 10 are visible. How can I populate the list box with the data for columns A, B & C with only rows 6, 8 & 10?? TIA, John |
All times are GMT +1. The time now is 02:22 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com