Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Listboxen in een formulier  (gelezen 4268 keer)

0 leden en 1 gast bekijken dit topic.

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Listboxen in een formulier
« Gepost op: 09 augustus 2021, 17:54:48 »
dag,
in mijn eerdere "budget" bestand had ik 2 cellen met lijsten , naargelang ik een item koos in de 1ste cel kreeg ik een corresponderende lijst in de 2de cel.
kortom : ik koos een rubriek (b.v facturen) en in de andere cel kreeg ik dan een lijst met corresponderende begunstigden.
dit gebeurde via "voorwaardelijke opmaak" , dat werkte goed maar als ik iets wilde veranderen moest ik telkens deze voorwaardelijke opmaak aanpassen en dat was een heel gedoe ,
zie : =ALS(D3="Inkomsten";y6:y9;ALS(D3="Belastingen";y11:y15;ALS(D3="Auto kosten";y17:y19;ALS(D3="Huishouden";y21:y27;ALS(D3="Gezondheid";y29:y34;ALS(D3="Facturen";y36:y42;ALS(D3="Verzekeringen";y44:y48;als(D3="Overboeken";y50:y50;""))))))))

naar aanleiding van het topic "niet aansluitende cellen" heb ik mijn ganse bestand veranderd om te werken met een userform.
daarin heb ik 2 listboxen aangemaakt alsook een vak om het bedrag in te vullen.
ik ben er al in geslaagd om de 1ste listbox te vullen met "Rubrieken" (ik lees deze uit van op een ander werkblad "Data"...
nu zou ik willen dat als ik een item (rubriek) in de 1ste listbox kies , de corresponderende begunstigden worden ingevuld in de 2de listbox , deze staan ook op het werkblad "Data" onder de betreffende rubriek.
als ik dan ook een begunstigde kies zou ik de waarde daarvan willen toewijzen aan "tezoeken"....
kan er mij iemand verder helpen ?
mijn kennis is niet voldoende om verder te kunnen  :-[.

Mvg,
Montagnard.

Offline AD1957

  • Ervaren lid
  • ***
  • Berichten: 250
  • Oplossing.be
Re: Listboxen in een formulier
« Reactie #1 Gepost op: 09 augustus 2021, 18:27:27 »
Alleen even voor de Rubriek "Inkomsten"
klick in Listbox1
In blad Data heb ik er een tabel van gemaakt.

p.s. onder namen beheren heb ik een en ander verwijderd.
Groet,

Albert

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Listboxen in een formulier
« Reactie #2 Gepost op: 09 augustus 2021, 18:34:41 »
dankuwel ! ik probeer hier morgen verder op te borduren.
mag ik vragen wat je bedoelt met "ps : onder namen beheren heb ik een en ander verwijderd" ?  :)
Mvg,
Montagnard.

Offline JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Listboxen in een formulier
« Reactie #3 Gepost op: 09 augustus 2021, 18:42:21 »
Hier ook een voorbeeld met tabellen. Vullen van listboxen kan met 2 regels code.
Ook ik heb named ranges verwijderd. De namen "Rubrieken" en "Inkomsten" bestonden al waardoor ik die niet kon toewijzen aan de tabel. Ook AD zal dit gemerkt hebben ;)

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Listboxen in een formulier
« Reactie #4 Gepost op: 09 augustus 2021, 18:46:28 »
ook U dankuwel ! ik bekijk het morgen allemaal , moet nu afsluiten , zit met "bezoek"...
iedereen nog een fijne avond  :).
Mvg,

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Listboxen in een formulier
« Reactie #5 Gepost op: 10 augustus 2021, 11:50:34 »
Dag,
al heel de voormiddag bezig geweest om ook de andere functies ( werkblad met alle verhandelingen / terugkerende betalingen ) terug bij te voegen en dat is me aardig gelukt.
ik heb dan de laatste rubriek (rij 60) willen veranderen én een lijntje willen bijvoegen (en OOK aangepast in het werkblad "Data") maar als ik deze laatste rubriek selecteer in de listbox op mijn formulier krijg ik een foutmelding waar ik maar niet aan onderuit geraak , ik kan maar niet bedenken waarom die melding er komt  :-[.
kunnen Jullie me nog eens helpen en me ook uitleggen waarom ?
alvast bedankt.

ps : anders werkt het voor mij écht super  :)

Mvg,
Montagnard.

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.280
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Listboxen in een formulier
« Reactie #6 Gepost op: 10 augustus 2021, 13:17:15 »
De Table "Argenta Sparen" heb je "Overboeken" genoemd. Ofwel, je ListObject kan dus niet gevonden worden. Pas die aan en het werkt weer...
De foutmelding Subscript out of range, betekent overigens meestal dat je met ontbrekende gegevens zit.
______________________________

Groet, Leo

Offline AD1957

  • Ervaren lid
  • ***
  • Berichten: 250
  • Oplossing.be
Re: Listboxen in een formulier
« Reactie #7 Gepost op: 10 augustus 2021, 13:18:56 »
Leo was sneller.  ;D
Groet,

Albert

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Listboxen in een formulier
« Reactie #8 Gepost op: 10 augustus 2021, 13:39:25 »
oke en dankuwel , had er totaal geen benul van dat dit "tables" waren op de sheet "Data" , ik dacht gewoon lijsten  :-[.....
na enig zoekwerk nu kunnen aanpassen en het werkt.
én weer bijgeleerd , alhoewel het moeilijker en moeilijker wordt om soms Jullie "code" te begrijpen  :(....ik word oud(er)  ;)

Mvg,
Montagnard.

Offline AD1957

  • Ervaren lid
  • ***
  • Berichten: 250
  • Oplossing.be
Re: Listboxen in een formulier
« Reactie #9 Gepost op: 10 augustus 2021, 14:38:27 »
De hersenen moet je blijven trainen. ;D
Groet,

Albert

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.280
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Listboxen in een formulier
« Reactie #10 Gepost op: 10 augustus 2021, 15:37:44 »
En voor de verdere training heb ik er nog 1 voor je. Ik zou persoonlijk niet werken met al die losse Table's maar 1 Table aanmaken waar je kan refereren naar de header voor je Listbox1 en daarmee dan op veldnaam in die Table dus de juiste kolom te vinden en de DataBodyRange te tonen in Listbox2. Deze methode is hiermee 100% flexibel. Toevoegen van een nieuwe rubriek of deleten van een bestaande wordt naadloos overgenomen.

De 2 Sub-procedures zien er dan zo uit...
Private Sub UserForm_Initialize()
'ListBox1.List = Sheets("Data").ListObjects("Rubrieken").DataBodyRange.Value
ListBox1.List = Application.Transpose(Sheets("Data").ListObjects("tblListings").HeaderRowRange.Value)

End Sub

Private Sub ListBox1_Click()
'ListBox2.List = Sheets("Data").ListObjects(Replace(ListBox1.Value, " ", "_")).Range.Offset(1).Value
ListBox2.List = Sheets("Data").ListObjects("tblListings").ListColumns(ListBox1.Value).DataBodyRange.Value

End Sub
De nieuwe Table het ik tblListings genoemd. Zie de bijlage voor de uitwerking.
Je eigen Table's heb ik laten bestaan alsmede jouw code regel in de 2 procedures (maar dan als comment).
______________________________

Groet, Leo

Offline AD1957

  • Ervaren lid
  • ***
  • Berichten: 250
  • Oplossing.be
Re: Listboxen in een formulier
« Reactie #11 Gepost op: 10 augustus 2021, 15:57:59 »
Met deze duidelijke uitleg hoeven de hersens niet echt te kraken. :thumbsup: \o/
Groet,

Albert

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Listboxen in een formulier
« Reactie #12 Gepost op: 11 augustus 2021, 07:52:17 »
@RedHead : merci voor de aanpassing ! werkt perfect...
van de code op zich begrijp ik niets maar mijn probleem is opgelost en dat is voor mij het voornaamste  :).
mijn "kennis" van Excel reikt maar tot op een zekere hoogte (old skool) , dan moet ik afhaken.
nog een fijne dag aan iedereen....
Mvg,
Montagnard.

Offline AD1957

  • Ervaren lid
  • ***
  • Berichten: 250
  • Oplossing.be
Re: Listboxen in een formulier
« Reactie #13 Gepost op: 12 augustus 2021, 11:43:52 »
Hallo Montagnard,

Gisteren stond er nog een nieuwe vraag, zie echter dat deze is verwijderd en waarschijnlijk al opgelost.
Ik had het bestand al gedownload en Event WorkBook_Open aangepast.
Bekijk het maar eens.
Groet,

Albert

Offline Montagnard

  • Ambassadeur
  • *****
  • Berichten: 2.385
  • Geslacht: Man
Re: Listboxen in een formulier
« Reactie #14 Gepost op: 12 augustus 2021, 11:55:19 »
Dag Albert,
ja ik heb gisteren mijn post weer verwijderd , het probleem zat hem niet in de code op zich maar wel in het feit dat "Domestic & General" niet meer als begunstigde onder de rubriek "verzekeringen" op werkblad "budget"  stond , maar wél nog bij op het werkblad "Herhalend" , ik heb die terugkerende betaling verwijderd op het werkblad "Herhalend" en het was opgelost........
toch bedankt voor het meedenken  :)
Mvg,
Montagnard.

 


www.combell.com