• 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.

Beperken aantal regels in Textbox

Status
Niet open voor verdere reacties.

Andre175

Gebruiker
Lid geworden
2 feb 2018
Berichten
351
Deze vraag is al eens eerder geplaatst.
ik zou graag een textbox (multiline) willen beperken tot maximaal 3 regels. Hoe het maximaal aantal tekens beperken is mij bekend, weet echter niet of het mogelijk is om het aantal regels te beperken.

SNB gaf in de eerder geplaatste vraag hierover (was in 2008) een link waar het antwoord zou moeten staan.
Helaas werkt deze link niet meer, dus blijft mijn vraag tot nu toe onopgelost.

André
 
Is LineCount niet een eigenschap van een TextBox?
 
linecount moet dan verwerkt worden in de code?
staat iig niet bij de eigenschappen van de textbox.
 
Dat kan je bijvoorbeeld regelen in het KeyDown event van de TextBox:
Code:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    Const LINELIMIT = 3
    Dim txt As String
    Dim i As Long
    Dim cntEnter As Long
   
    txt = TextBox1.Text
    For i = 1 To Len(txt)
        If Asc(Mid(txt, i, 1)) = 13 Then
            cntEnter = cntEnter + 1
        End If
    Next
   
    If (cntEnter + 2) > LINELIMIT And KeyCode = 13 Then
        KeyCode = 0
    End If
End Sub
 
Laatst bewerkt:
André175, zie de bijlage als snel voorbeeldje voor je met het gebruik van LineCount...
 

Bijlagen

  • TestformLineCount.xlsm
    16,7 KB · Weergaven: 36
Je bent vergeten de bijlage te plaatsen ;)
Ik kende die LineCount trouwens ook nog niet hoewel deze wel gewoon in Intellisense staat.
Thanks :)

Ook maar even een voorbeeldje. Dit werkt met een TextBox in zowel het werkblad als een Userform:
Bekijk bijlage LineCount voorbeeld.xlsm

De code achter de TextBox:
Code:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If TextBox1.LineCount > Range("G7").Value Then
        If KeyCode <> 8 Then KeyCode = 0
    End If
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan