Toon posts:

VBA listbox row kopieeren

Pagina: 1
Acties:
  • 102 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Normaal heb ik een sterke afkeer van vb(a) maar ik moet het nu gebruiken, wat ik wil doen is een rij uit een listbox kopieeren en plakken als een nieuwe rij in een andere listbox, en nu komt.... het ze hebben beiden drie columns.

Ik heb me helemaal suf gezocht/geprobeerd maar niks is tot nu toe gelukt :'(

  • whoami
  • Registratie: December 2000
  • Laatst online: 01:57
Je neemt de selectedrow, je add die aan de Items collection van de andere listbox, en je verwijderd de selectedrow uit de source-listbox.

Eenvoudig toch?

https://fgheysels.github.io/


Verwijderd

Topicstarter
whoami schreef op 04 June 2003 @ 15:38:
Je neemt de selectedrow, je add die aan de Items collection van de andere listbox, en je verwijderd de selectedrow uit de source-listbox.

Eenvoudig toch?
Ja het hoe heb ik ook wel kunnen bedenken maar hoe dit dan vervolgens uitgevoerd moet worden ? Wat ik ook probeer het mislukt in vba.

  • whoami
  • Registratie: December 2000
  • Laatst online: 01:57
Wat heb je dan precies al geprobeerd, en wat is mislukken? Krijg je fouten? Crashed het? Wat doet het (niet) ?

https://fgheysels.github.io/


Verwijderd

Topicstarter
Als je dat wilt weten. Het laatste wat ik geprobeerd had was:
code:
1
2
3
4
5
6
7
8
9
10
11
Dim lst1 As ListBox, lst2 As ListBox
Dim itm As Variant

Set lst1 = Me!list_gerechten
Set lst2 = Me!list_gekozen

   For Each itm In lst1.ItemsSelected
          If lst2.RowSource = "" Then
             lst2.RowSource = lst1.ItemData(itm)
          End If
   Next itm

Maar dan neemt die alleen de eerste cel van de rij over :(

Maar heeft niemand een idee hoe het zou moeten ?

[ Voor 8% gewijzigd door Verwijderd op 04-06-2003 17:01 ]


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 03:42

RayNbow

Kirika <3

Hier is een voorbeeldje hoe je de data van een ListBox kan opvragen:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    'Items aan ListBox1 toevoegen
    ListBox1.AddItem "Item 1"
    ListBox1.Column(1, ListBox1.ListCount - 1) = "Kolom 2 van Item 1"
    ListBox1.Column(2, ListBox1.ListCount - 1) = "Kolom 3 van Item 1"
    
    ListBox1.AddItem "Item 2"
    ListBox1.Column(1, ListBox1.ListCount - 1) = "Kolom 2 van Item 2"
    ListBox1.Column(2, ListBox1.ListCount - 1) = "Kolom 3 van Item 2"
    
    
    ListBox1.AddItem "Item 3"
    ListBox1.Column(1, ListBox1.ListCount - 1) = "Kolom 2 van Item 3"
    ListBox1.Column(2, ListBox1.ListCount - 1) = "Kolom 3 van Item 3"

    'Tweede Item selecteren in ListBox1
    ListBox1.ListIndex = 1
    
    'Data over pompen :)
    ListBox2.AddItem ""
    ListBox2.List(ListBox2.ListCount - 1, 0) = ListBox1.List(ListBox1.ListIndex, 0)
    ListBox2.List(ListBox2.ListCount - 1, 1) = ListBox1.List(ListBox1.ListIndex, 1)
    ListBox2.List(ListBox2.ListCount - 1, 2) = ListBox1.List(ListBox1.ListIndex, 2)

Zoals je kan zien maakt het niet uit of je ListBox.List(Row,Column) of ListBox.Column(Column,Row) gebruikt.

Edit: Nog wat extra info. AddItem zorgt ervoor dat het item onderaan de lijst wordt toegevoegd. Daarom gebruik ik ListCount - 1 om de index van het laatste item te krijgen.

[ Voor 14% gewijzigd door RayNbow op 04-06-2003 17:18 ]

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


Verwijderd

Topicstarter
.List bestaat helaas niet in de vba van access en wanneer ik .column op deze manier gebruik krijg ik doodleuk te horen "object required". Maar toch bedankt :)

  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 03:42

RayNbow

Kirika <3

Oh? Access? Hmm, heb ik helaas geen VBA ervaring in :'(
(Ik heb m'n code uitgeprobeerd in Word)

[ Voor 7% gewijzigd door RayNbow op 04-06-2003 17:37 . Reden: typo ]

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • whoami
  • Registratie: December 2000
  • Laatst online: 01:57
Kan je niet ipv direct die Columns te accessen niet onmiddellijk een pointer krijgen naar het geselecteerde row?

Iets ala:
code:
1
ListBox1.List.SelectedItem

oid?

https://fgheysels.github.io/

Pagina: 1