Help!

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

Hulp bij posten

Recente topics

Auteur Topic: Positie  (gelezen 3843 keer)

0 leden en 1 gast bekijken dit topic.

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Positie
« Gepost op: 03 mei 2023, 13:24:51 »
Hoi,

ik heb in mijn tekstbox regel dit staan
Private Sub TextBox10_Change()
TextBox10.Text = UCase(TextBox10.Text)
End Sub

nu is alles met hoofdletter maar is het ook mogelijk om alleen maar 10 positie hoofdletters te hebben en de rest in kleine letters?

B.V
TOG-1234-Tog

Alvast bedankt
Excel 365 NL

Offline Haije

  • Excel-Expert
  • Volledig lid
  • *****
  • Berichten: 197
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #1 Gepost op: 03 mei 2023, 17:17:53 »
Zoiets?
TextBox10.Text = UCase(left(TextBox10.Text),10)&LCase(right(TextBox10.Text),len((TextBox10.Text)-10)
|-|aije

ik gebruik Office 2016 Professional Plus

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #2 Gepost op: 04 mei 2023, 07:03:10 »
@Haije

Goedemorgen,

ik krijg een Compileerfout melding zodra ik de eerste letter in tik
Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Positie
« Reactie #3 Gepost op: 04 mei 2023, 09:56:02 »
Hallo Sunnybat,

Dat is met de vorige code (Haije zal het misschien niet graag horen) het enige wat je kan verwachten.
Met deze maak je meer kans op succes:
Private Sub TextBox10_Change()
With TextBox10
    t = UCase(.Value)
    If Len(t) > 10 Then
        t = Left(t, 10) & LCase(Mid(t, 11))
    End If
    .Value = t
End With
End Sub
Je mag dan eender welke mix van hoofd- en/of kleine letters intikken.

Mvg,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #4 Gepost op: 04 mei 2023, 10:47:03 »
@MollyVH

Super bedankt _/-\o_

en @Haije u ook bedankt
Excel 365 NL

Online RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.277
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Positie
« Reactie #5 Gepost op: 07 mei 2023, 14:31:46 »
@MollyVH, is een OnExit event niet beter in dit geval? Ik denk dat het Change event zichzelf meerdere keren gaat aanroepen (maar dat kán ik ook mis hebben = verder niet getest).
______________________________

Groet, Leo

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Positie
« Reactie #6 Gepost op: 08 mei 2023, 09:24:06 »
@ RedHead,

Daar valt iets (meer bepaald véél ;)) voor te zeggen, maar de werk- en denkwijze van TS ondertussen goed kennende was ik liever op zijn eigen ingeslagen weg verdergegaan.
Overigens zal in dit geval het event niet meerdere maar slechts één keer zichzelf aanroepen, dus ik denk dat niemand sneller een tekst kan intikken dan de verwerking van het event ;)

Mvg,
Molly
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Online JEC

  • Excel-Expert
  • Ervaren lid
  • *****
  • Berichten: 422
Re: Positie
« Reactie #7 Gepost op: 08 mei 2023, 20:24:03 »
De macro wordt wel degelijk meerdere keren aangeroepen.
Twee keer per klik zelfs.

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #8 Gepost op: 10 mei 2023, 15:10:57 »
@ MollyVH

het werkt perfect maar ik had nog 1 klein vraagje
is het mogelijk aan te geven dat er in een kolom of een text box minimaal 8 positie ingevuld moet worden of meer of minder?

Excel 365 NL

Offline MollyVH

  • Excel-Expert
  • Oplosser
  • *****
  • Berichten: 847
Re: Positie
« Reactie #9 Gepost op: 10 mei 2023, 15:38:44 »
Citaat
een kolom of een text box minimaal 8 positie ingevuld moet worden of meer of minder?

een kolom?  een textbox?
minimaal 8?  of meer?  of minder?
???
Op een duidelijke vraag komt er nochtans dikwijls een duidelijk antwoord...
Windows 11 Home NLD 64bit
11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz 2496
Aspire TC-1660
Intel(R) UHD Graphics 750 1024MB
476 GB SSD KINGSTON OM8PCP3512F-AA
1863 GB HD Seagate ST2000DM008-2FR102
Office 2021 Professional Plus NLD 64bit

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #10 Gepost op: 10 mei 2023, 15:57:41 »
@MollyVH

Private Sub TextBox10_Change()
TextBox10.Text = UCase(TextBox10.Text)
End Sub

ik zou graag in Textbox10 dat je perse 5 cijfers in geef BV 04094

als het minder als 04094 mag dat niet





 
Excel 365 NL

Online RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.277
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Positie
« Reactie #11 Gepost op: 10 mei 2023, 16:26:09 »
if len(TextBox10.Text) <> 5 then ...
______________________________

Groet, Leo

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #12 Gepost op: 11 mei 2023, 07:17:54 »
@RedHead

ik kan toch meer als 5 of min doen

Private Sub TextBox10_Change()
TextBox10.Text = UCase(TextBox10.Text)
If Len(TextBox10.Text) <> 5 Then
End If
End Sub


Excel 365 NL

Online RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.277
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Positie
« Reactie #13 Gepost op: 11 mei 2023, 09:58:41 »
SunnyBat, je kreeg van mij een deel van de uitvraging. Hier moet je zelf uiteraard je afhandeling aan toevoegen. Je zet nu een leeg if-statement neer.
______________________________

Groet, Leo

Offline Sunnybat

  • Volledig lid
  • **
  • Berichten: 212
  • Geslacht: Man
  • Oplossing.be
Re: Positie
« Reactie #14 Gepost op: 11 mei 2023, 10:30:55 »
@Redhead

zie het al heb de verkeerde gepost sorry

Private Sub TextBox10_Change()
TextBox10.Text = UCase(TextBox10.Text)
If Len(TextBox10.Text) <> 5 Then
MsgBox "moet 5 cijfers zijn"
End If
End Sub

Kreeg elke keer een melding na het in toetsen van een cijfer heb nu < weg gehaald en het werkt
is er ook een soort code dat als je minder dan 5 in geeft dat je ook een melding krijgt dat de cijfers te kort zijn?

Alvast super bedankt _/-\o_
Excel 365 NL

 


www.combell.com