Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

add 2 columns of listbox from another listbox

Posted on 2014-03-13
4
Medium Priority
?
272 Views
Last Modified: 2014-03-16
vba excel 2010 userform listbox

Trying to loop through listbox1 and add the first 2 columns to listbox2


Listbox1 has 42 columns
Listbox2 has 2 columns

Dim iIndex
    Dim s As Long, j As Long, k As Long

    With ListBox1
        s = .ListIndex

        ListBox2.AddItem .List(s, 0), 0
        ListBox2.AddItem .List(s, 1), 0
        j = ListBox2.ListCount - 1

        For k = 1 To .ColumnCount - 1
            ListBox2.List(j, k) = .List(s, k)
        Next k
    End With


This is only adding one row and not completely right

Thanks
fordraiders
0
Comment
Question by:fordraiders
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 
LVL 53

Accepted Solution

by:
Rgonzo1971 earned 2000 total points
ID: 39928514
Hi,

If you want the first 2 of listbox1 in listbox2 pls try

Dim arrListBxList As Variant
arrListBxList = ListBox1.List
ReDim Preserve arrListBxList(UBound(arrListBxList, 1), 1)
ListBox2.List = arrListBxList

Open in new window

As for your code you loop the ListBox1. Columns instead of the Listbox2.Columns and I don't see a loop for the rows

Regards
0
 
LVL 3

Author Comment

by:fordraiders
ID: 39928583
rgonzo, worked great.

I have a weird question: i expanded the data needed to , I THINK column 13

UserForm2.ListBox52.Clear

Dim arrListBxList As Variant
arrListBxList = ListBox32.List
ReDim Preserve arrListBxList(UBound(arrListBxList, 1), 13)
ListBox52.List = arrListBxList


45 pt;60 pt;0 pt;0 pt;0 pt;0 pt;0 pt;0 pt;0 pt;0 pt;30 pt;0 pt;0 pt


I had to set my column count 13 and the column widths as above..

i need to see, columns 0,1,10...

I dont understand the math of 13 in the code...

Thanks very much !!
0
 
LVL 53

Expert Comment

by:Rgonzo1971
ID: 39928614
Hi

They are 0-based array so if you want 13 columns you have to give 12 as parameter on the redim

on your example the 30pt col is the 11th not the 13th
Regards
0
 
LVL 3

Author Closing Comment

by:fordraiders
ID: 39933560
thanks
0

Featured Post

Tech or Treat!

Submit an article about your scariest tech experience—and the solution—and you’ll be automatically entered to win one of 4 fantastic tech gadgets.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

You need to know the location of the Office templates folder, so that when you create new templates, they are saved to that location, and thus are available for selection when creating new documents.  The steps to find the Templates folder path are …
After seeing numerous questions for Dynamic Data Validation I notice that most have used Visual Basic to solve the problem. This suggestion is purely formula based and can be used in multiple rows.
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

610 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question