Helpmij.nl
Helpmij.nl
Helpmij.nl
Steun Helpmij.nl! Klik hier     Computerprobleem? Klik hier!

Quote

Weergeven resultaten 1 tot 13 van 13

Onderwerp: Userform: positie op scherm en dropdown van een combobox

  1. #1
    Senior Member
    Geregistreerd
    1 augustus 2006
    Vraag is niet opgelost

    Userform: positie op scherm en dropdown van een combobox

    Ik wil dat bij een klik op een bepaalde cel een userform met een ComboBox wordt getoond (reden: op die cel staat een validatie maar de items uit de lijst zijn veel te klein omleesbaar te zijn). Vervolgens moet de keuze uit de ComboBox in die cel worden ingevuld.
    Dat is geen probleem.

    Maar wat ik nu zou willen:
    -de userform zou naast de actieve cel moeten komen en niet in het midden van het werkblad (frm_test.left = activecell.left werkt niet; bij die activecell.left zou ook nog de breedte van de cel moeten opgeteld worden natuurlijk)
    -als ik de dropdown methode gebruik voor die ComboBox worden de items van die combox NAAST de userform getoond (dropdown is wel niet persé noodzakelijk)
    -is er een eenvoudige manier om in de ComboBox 1 or meerdere beginletters te typen (cf ComboBox in Access) en dan ineens op de juiste item in de ComboBox te komen?

  2. #2
    Giga Senior
    Verenigingslid
    SjonR's avatar
    Geregistreerd
    10 november 2016
    Locatie
    Zaandam
    Afstand tot server
    ±116 km
    voor de userform op de juiste plaats al activecell.offset(,1).left geprobeerd? Kom je een eind in de buurt gok ik.

  3. #3
    Senior Member
    Geregistreerd
    1 augustus 2006
    Quote Origineel gepost door SjonR Bekijk Bericht
    voor de userform op de juiste plaats al activecell.offset(,1).left geprobeerd? Kom je een eind in de buurt gok ik.
    De form blijft gewoon in het midden staan. frm_test en activecell.left geven beide de waarde 0

  4. #4
    Senior Member
    Geregistreerd
    1 augustus 2006
    Quote Origineel gepost door SjonR Bekijk Bericht
    voor de userform op de juiste plaats al activecell.offset(,1).left geprobeerd? Kom je een eind in de buurt gok ik.
    Heb al uitgevist dat de StartupPosition van de form op manual moet staan
    Maar
    Code:
    frm_catégorie.Left = Target.Left + Target.Width
    frm_cat?gorie.Top = Target.Top
    reageert nu wel, maar positie is nog niet juist.
    Denk dat de left van een range van een ander startpunt vertrekt dan de left van een form

  5. #5
    Senior Member
    Geregistreerd
    1 juli 2016
    Locatie
    Rotterdam
    Afstand tot server
    ±151 km
    Om je userform op een bepaalde plek te openen

    Code:
    Private Sub UserForm_Activate()
        Me.StartUpPosition = 0
        Me.Top = Application.Top + 96
        Me.Left = Application.Left + Application.Width - Me.Width - 88
    End Sub
    Met vriendelijke groet,
    Willem

  6. #6
    moeten we weer zelf een voorbeeld bestand maken?

  7. #7
    Senior Member
    Geregistreerd
    1 augustus 2006
    Quote Origineel gepost door loek010 Bekijk Bericht
    Om je userform op een bepaalde plek te openen

    Code:
    Private Sub UserForm_Activate()
        Me.StartUpPosition = 0
        Me.Top = Application.Top + 96
        Me.Left = Application.Left + Application.Width - Me.Width - 88
    End Sub
    Bedankt! Zijn die 96 en 88 de hoogte en breedte van de kolom- en rijkoppen? Maar veronderstel dat ik die waarden moet gebruiken om de positie tov de target te bepalen?

  8. #8
    Senior Member
    Geregistreerd
    1 augustus 2006
    Quote Origineel gepost door emields Bekijk Bericht
    moeten we weer zelf een voorbeeld bestand maken?
    Hoezo? Dat bestand is toch niet nodig voor het beantwoorden van de vraag?

  9. #9
    als u het zegt zal het zo wel zijn.

  10. #10
    Senior Member
    Geregistreerd
    1 augustus 2006
    Validation.xlsm

    Voor Emields
    Laatst aangepast door reneemettrie : 8 oktober 2019 om 20:44

  11. #11
    Senior Member
    Geregistreerd
    1 juli 2016
    Locatie
    Rotterdam
    Afstand tot server
    ±151 km
    Quote Origineel gepost door reneemettrie Bekijk Bericht
    Bedankt! Zijn die 96 en 88 de hoogte en breedte van de kolom- en rijkoppen? Maar veronderstel dat ik die waarden moet gebruiken om de positie tov de target te bepalen?
    Klopt daar zal je even mee moeten stoeien om de juist plek te bepalen
    Met vriendelijke groet,
    Willem

  12. #12
    Junior Member
    Geregistreerd
    12 oktober 2019
    reneemettrie? dé reneemettrie? maw degene die ik lang geleden heb ontmoet bij een presentatie annex groepssollicitatie voor een nog op te richten onderwijsinstelling en die ik nadien nog een professioneel pre-voorstel heb gedaan?
    Hoef je niet per se op te antwoorden, hoor.

    Over naar je probleem dus: velen hebben dat al vóór jou geprobeerd en ongetwijfeld zullen nog velen volgen. Maar… het gaat niet tenzij met extreem gefoefel. De reden hiervoor is dat een userform een ander coördinatenstelsel gebruikt dan werkbladcellen. Dat betekent dat je vooraf eea definitief zal moeten vastleggen: Excel bij voorkeur gemaximaliseerd, lint zichtbaar of niet, kolombreedte (A in je voorbeeld), alle rijhoogtes liefst identiek… Pas daarna kan je aan het spelen gaan met de waarden die je van loek010 hebt gekregen. De 88 en de 96 kunnen bij hem/haar perfect kloppen zonder dat ze dat bij jou of bij mij doen. Zelf zou ik het zo doen: de waarden van Me.Left aanpassen tot het formulier netjes naast kolom A begint, vervolgens hetzelfde met Me.Top tot het gelijk valt met de bovenkant van rij 1 (noteer die voor later). Je hebt dan ook nog een derde waarde nodig, namelijk het verschil tussen de bovenkant van rij 1 en die van rij 2. Ik zou die zoeken door bv. opnieuw Me.Top aan te passen tot die gelijk valt met de bovenkant van rij 101. Deel door 100 en je hebt de waarde die je per rij moet toevoegen aan de Me.Top die je de eerste keer had gevonden.

    Conclusie: het zal altijd een bricoleeroplossing blijven. Mijn voorkeursuggestie: vergeet dat formulier. Je zit met een lettertype van 24 pt te werken en een zoom van 50%. Dat is een soort nuloperatie. Als je naar 100% gaat en een lettertype van bv. 12 pt wordt de dropdownlijst van je gegevensvalidatie meteen wel leesbaar. Als dat nog te klein aanvoelt kan je naar 8 pt/150% gaan. Kwestie van even uitzoeken dus. Nog even rijhoogtes naar wens aanpassen en klaar.

    De derde mogelijkheid sluit aan bij de tweede. Ook daarvoor zal je met lettertype en zoom even aan de slag moeten. Als met name de dropdownlijst in de cellen storend is kan je perfect een combobox op je werkblad zetten en dan wordt effectief van de werkbladcoördinaten gebruik gemaakt. Veel codeerwerk komt daar dan niet aan te pas, dus ik heb voor de aardigheid een voorbeeldje gemaakt.

    Succes!
    Bijgevoegde bestanden Bijgevoegde bestanden

  13. #13
    Senior Member
    Geregistreerd
    1 augustus 2006
    Enigmasmurf, het was voor iemand die ik gecoached heb in Excel, heb hem nadien niet meer gesproken en hij heeft ook niet gereageerd op het bestand dat ik hem mailde.
    Die positie van de userform lukte goed voor de horizontale positie, maar niet voor de verticale: voor ene cel te hoog, voor andere te laag.
    Maar tot de zoom-conclusie was ik ook gekomen: lettertype verkleinen en zoom vergroten .

Berichtenregels

  • U mag geen nieuwe vragen starten.
  • U mag niet reageren op berichten.
  • U mag geen bijlagen versturen.
  • U mag uw berichten niet bewerken.
  •  
Helpmij.nl
Helpmij.nl

Helpmij.nl en business

Partners
Sponsoren