• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Bepalen welke textbox is geselecteerd op userform

Status
Niet open voor verdere reacties.

Pieteke

Gebruiker
Lid geworden
25 sep 2016
Berichten
10
geachte experts,

ben al dagen aan het grasduinen geweest op deze site en tientallen andere, maar een oplossing vond ik niet voor mijn vraag...

Op mijn (main) userform staan een 30-tal labels en textboxen (standaardnamen textbox1...textbox33) waarvan een hele reeks textboxen precies hetzelfde moeten uitvoeren, nl het tonen van een 2de userform.

De vraag: is er een routine maakbaar die vaststelt welke textbox is geselecteerd ("Click") en de bijbehorende vervolgactie zal uitvoeren?

Beschrijving-summier:
In mijn Excel-werkboek staan een blad "GrootboekRekeningen" en een blad "factuurRegister' waarop facturen kunnen worden bijgewerkt en nieuwe toegevoegd. Per factuur kunnen er een 9-tal grootboekrekeningen worden toegekend. In de (main)userform-initialize worden de labels dynamisch gevuld vanuit de header van het werkblad FactuurRegister. Bij bestaande facturen bijwerken worden de textboxen gevuld vanuit de rij (detail-record).
Het is de bedoeling dat als de textbox voor een grootboekrekeningnummer wordt ge"click'd, de 2de userform wordt getoond waarop een grootboekrekening kan worden geselecteerd.
Op dit moment weet ik niets anders te verzinnen dan dat de gebruiker de textbox moet "Dblclick"-en, en per textbox dat event wordt voorzien van de userform.show.

Alvast bedankt voor de te nemen moeite
 
In plaats van de dubbelklik in de tekstbox kan je het ook in het textbox_Enter event doen.
Dan gebeurt het op het moment dat de textbox wordt geselecteerd.
 
  • Of Stop al jouw textboxen in een Klasse (withevents)
  • Ligt een Keuzelijst ipv een tweede Userform niet voor de hand.
  • Als je dan toch jouw grootboekrekening middels een tweede Userfom kiest kun je wellicht beter een Label ipv Textbox gebruiken aangezien deze wel een clickevent heeft (en dan eventueel ook in een Klasse)

Userform.activecontrol geeft (behoudens een aantal uitzonderingen) het aktieve control
 
Beste experts Edmoor en Eric,
Allereerst bedankt dat u reageert.
Ik merk aan de antwoorden dat het stellen van de juiste vraag een vak apart is… en de situatie te summier beschrijven zet u ook nog op het verkeerde been...
De (main) userform gebruik ik voor meerdere werkbladen in dit werkboek, bijv. het opvoeren/onderhouden van facturen, relaties, eenheden etc. De userform toont de inhoud van een geselecteerde rij. Iedere textbox toont de inhoud van een cel van een bepaalde kolom en heeft zijn “eigen” Label, die de kolomheader toont.
De textboxen zijn niet te vervangen door labels omdat ook vrije tekst kan worden ingevuld.
Het “enter event” triggert idd welke textbox is geselecteerd. Dus ik zou voor iedere textbox (33stuks) een enter-event kunnen schrijven met daarin één en dezelfde routine met als parameters bijv. de naam en of caption vd textbox. De routine handelt dan met die parameters de vervolgactie af.
Van mijn vraag blijft over: is het te voorkomen dat ik die (33) enter-events moet maken?
(hopelijk ben ik nu wat duidelijker)
 
Van mijn vraag blijft over: is het te voorkomen dat ik die (33) enter-events moet maken?

Zoals ook gemeld op snb's heldere site, kun je niet de Enter-events afvangen. Maar je zou dit kunnen ondervangen door Mousedown en Keydown-events te gebruiken
 
Op basis van de door jou verstrekte informatie betwijfel ik nut & noodzaak van een tweede userform.
Het zichbaar maken van een listbox in hetzelfde userform lijkt me voor-de-hand-liggender.

Als je ons je opzet toont, denk ik dat er snel een eenvoudiger aanpak aangereikt wordt.
 
Ja, precies wat ik bedoel en wil gebruiken. Prachtig!
Deze plossing toont uw kennis en kunde en laat tevens zien hoe krachtig toch Visual Basics is.
Dank u allen
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan