[Excel] Na x-aantal tekens niet meer verder kunnen typen

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

  • Binnetie
  • Registratie: November 2000
  • Laatst online: 20-02 16:10
Ik werk eigenlijk nooit met Excel, maar ik ben nu bezig met iets waar ik in Excel een inventarisatielijst aan het maken ben.

Ik heb een kolom en ik wil dat er maar maximaal 10 tekens worden ingevuld. Ik heb het nu via valideren ingesteld dat wanneer je de 10 tekens overschreid en daarna naar de volgende cel wilt dat je dan een melding krijgt. Maar dan is bijvoorbeeld je ingevulde waarde weg. Ik wil het zo instellen dat je gewoon niet verder kan typen nadat je de 10 tekens gehad hebt.

Iemand een idee hoe ik dit moet doen?

  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Niet via validatie, die doet alleen iets als je klaar bent met een veld ( controleert dan of het veld valideert ).

Wat je kan proberen is gebruik maken van het onkey event, maar zorg dan aub wel dat de code die hier aanhangt super licht is, want hij gaat het uitvoeren bij elke toets die ingedrukt wordt :(

  • Binnetie
  • Registratie: November 2000
  • Laatst online: 20-02 16:10
Gomez12 schreef op dinsdag 28 november 2006 @ 16:09:
Niet via validatie, die doet alleen iets als je klaar bent met een veld ( controleert dan of het veld valideert ).

Wat je kan proberen is gebruik maken van het onkey event, maar zorg dan aub wel dat de code die hier aanhangt super licht is, want hij gaat het uitvoeren bij elke toets die ingedrukt wordt :(
Bedankt voor je reactie. Hoe werkt een onkey event? Aangezien ik nooit met Excel werk eigenlijk.

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 23:26
Het onkey event bestaat niet voor worksheets.
Wat je wel via een macro kan instellen is dat een tekst van meer dan 10 tekens wordt afgehakt tot de eerste 10 tekens bij het verlaten van de cel.

  • Binnetie
  • Registratie: November 2000
  • Laatst online: 20-02 16:10
onkl schreef op dinsdag 28 november 2006 @ 16:56:
Het onkey event bestaat niet voor worksheets.
Wat je wel via een macro kan instellen is dat een tekst van meer dan 10 tekens wordt afgehakt tot de eerste 10 tekens bij het verlaten van de cel.
Dit is interessant, kan je me een stukje opweg helpen hoe ik dit moet instellen?

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 23:26
Ik begreep dat je weinig van VBA wist, dus de uitgebreide uitleg:
Type Alt-F11.
Je komt in de Visual Basic editor.
Zoek het relevante worksheet in de project explorer (meestal linksboven ergens) en dubbelklik.
Plak in het codevenster (meestal rechts) dit:
Visual Basic:
1
2
3
4
5
6
7
8
Private Sub Worksheet_Change(ByVal Target As Range)
'Een macro met deze naam wordt altijd uitgevoerd als er ergens in het blad een celwaarde veranderd.
If Target.Column = 2 Then
'Hier staat: als de Column van target(de cel die veranderd) 2 is (da's dus kolom B) doe dan alles tot de end if.
    If Len(Target.Value) > 10 Then Target.Value = Left(Target.Value, 10)
    'Hier staat: Als de Lengte (len) van de inhoud (value) van target groter is dan 10, neem dan de 10 linker (left) tekens.
End If
End Sub

En probeer het eens uit. Het zou nu moeten werken voor kolom B.
Pagina: 1