invoer in hoofdletters

Status
Niet open voor verdere reacties.

JEPEDEWE

Terugkerende gebruiker
Lid geworden
14 jun 2006
Berichten
1.682
Hallo,
Ik wil een invoervak dat automatisch, alle letters die ik typ, in hoofdletters schrijft.
Ik probeerde in invoermasker > maar dat werkt niet

Bedankt voor de hulp

JP
 
Dag JEPEDEWE,

ik vermoed dat dit een opmaak is, dus als je > in de opmaak eigenschap invoert zou het moeten lukken.
 
zie niet direct iets staan in dat verband bij "opmaak"
 
Zie bijgevoegde afbeelding
 

Bijlagen

  • FormatProperty.JPG
    FormatProperty.JPG
    23,9 KB · Weergaven: 81
Format = Notatie ;)
 
wat ik ook dacht maar als ik hier > in zet dan kan ik TOCH nog kleine letter invoeren..
Pas als ik op enter klik wordt alles in hoofdletters omgezet.. dus.. dat is het eigenlijk NOG niet wat ik graag zou zien..
 
Je wilt dus dat tijdens het typen in de textbox een kleine letter al direct naar een hoofdletter wordt veranderd?
Dat kan volgens mij alleen middels een stukje code in het KeyPress event.
Maar waarom zou je dat willen doen?
De hoofdletters staan er in zodra je het veld verlaat.
 
Dag JP,

ik zie dat bij je voorbeeld afbeelding de term wat-te-zoeken staat. Is het misschien de bedoeling dat de zoekterm naar hoofdletters wordt omgezet en alle punten, komma's en andere tekens eruit gehaald worden?
Dan kan je de volgende functie, of een variant erop gebruiken:

Code:
Public Function gfgCompact(varText As Variant) As String
On Error GoTo Err_gfgCompact

    Dim strText As String, strResult As String, strChar As String
    Dim intPos As Integer, intReplace As Integer
    Dim strReplace1 As String, strReplace2 As String, strRemove As String
    
    
    strRemove = " ,?;.:/=+%*$[]&#'(?!{})?-_" & """"
    strReplace1 = "àâ@éèêëçïöüùµ"
    strReplace2 = "AAAEEEECIOUUU"
    
    If Nz(varText) = "" Then
        gfgCompact = ""
    Else
        strText = UCase(varText)
    End If
    For intPos = 1 To Len(strText)
        If InStr(1, strRemove, Mid(strText, intPos, 1)) = 0 Then
            strChar = Mid(strText, intPos, 1)
            intReplace = Nz(InStr(1, strReplace1, strChar))
            If intReplace > 0 Then
                strChar = Mid(strReplace2, intReplace, 1)
            End If
        strResult = strResult & strChar
        End If
    Next intPos
    gfgCompact = strResult


Exit_gfgCompact:
    Exit Function
    
Err_gfgCompact:
    Debug.Print Err.Number & " : " & Err.Description
    Resume Exit_gfgCompact
    

End Function
 
Je wilt dus dat tijdens het typen in de textbox een kleine letter al direct naar een hoofdletter wordt veranderd?
Dat kan volgens mij alleen middels een stukje code in het KeyPress event.
Maar waarom zou je dat willen doen?
De hoofdletters staan er in zodra je het veld verlaat.
 
Notatie is uiteraard iets anders als wat je opslaat. Als je alleen het 'smoel' van een veld verandert, zul je elke keer als je dat veld wilt gebruiken een conversie op de tekst moeten doen. Anders zie je de ingetypte waarde. Zelf zou ik het hele probleem tackelen door te voorkomen dat je iets anders dan hoofdletters invult.
 
Door op de OnChange event gelijk alle letters om te zetten naar hoofdletters. Iets als:
Code:
     If Not Me.wat_teZoeken.Text = VbNullString Then Me.wat_teZoeken.Text = UCase(Me.wat_teZoeken.Text)
 
ik schrijf dus:
Code:
    If Not Me.wat_te_zoeken.Text = vbNullString Then Me.wat_te_zoeken.Text = UCase(Me.wat_te_zoeken.Text)
    Dim strSQL As String, zoekstring As String
    zoekstring = "WHERE naam Like ""*" & Me.wat_te_zoeken & "*"""
    strSQL = "SELECT NAAM, STRAAT, PLAATS, GEBOORTE, Rijksregisternummer FROM fiche "
    strSQL = strSQL & IIf(zoekstring = vbNullString, "", zoekstring) & " ORDER BY NAAM, STRAAT "
    With Me.naamlijst
        .RowSource = strSQL
        .Requery
        '.SetFocus
        '.Dropdown

en krijg "onvoldoende stackruimte" op de lijn met ".RowSource = strSQL"

    End With
 
Je moet sowieso bij de OnChange gebeurtenis altijd de .Text property gebruiken, zoals in mijn voorbeeld. Maar waarom zou je dat omzetten in dit geval? Je query is niet hoofdlettergevoelig, dus je filtert toch wel correct. Doe geen dingen die niet nodig zijn :).
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan