input mask definiëren

Status
Niet open voor verdere reacties.

dave34nl

Gebruiker
Lid geworden
19 mei 2002
Berichten
76
Hallo,

Ik zit met het volgende, ik wil in een tekstvak een invoer masker instellen maar dat lukt me niet en vraag me af of dit met een invoermasker wel mogelijk is.

Na invoer van een item wil ik de bijbehorende gegevens opzoeken, dat is uiteindelijk het doel maar nu het probleem, het itemnummer bestaat minimaal uit 8 karakters waarvan er altijd 2 numeriek zijn (welke niet op een vaste plaats staan of naast elkaar staan), wat ik zou willen is dat er eerst een validatie plaatsvind of aan die 2 voorwaarden is voldaan en de gebruiker erop wordt gewezen met zoiets als "itemnummer te kort, minimaal 8 karakters" of "een itemnummer bevat altijd 2 numerieke karakters"

Dit zouden geldige itemnummers kunnen zijn:

A10BBndp
bb9k6Jfkba
1lper8Pouu

Ik heb gezien dat je in VBA wel wat mogelijk is dmv een minimale lengte in te stellen maar heb geen idee om dat en de "andere wensen" in VBA te programmeren, wie zou me opweg kunnen helpen ?

Alvast bedankt,

Groetjes,
Dave

Bekijk bijlage Inputmask.rar
 
Je noemt het een invoermasker, maar dat is het natuurlijk niet. Een invoermasker is een dwingend format waaraan de ingevoerde waarde moet voldoen. Dit is bijvoorbeeld een voorbeeld van een invoermasker: >LL00>LLLL;;_. Twee letters , twee cijfers en vier letters. Bij jou mogen de cijfers overal in de code staan, en daar is geen invoermasker voor te maken.
Je zult dus een procedure moeten maken die alle voorwaarden controleert: precies 8 tekens,en exact twee cijfers daarin. En dat doe je met VBA.
 
Je bent ofwel nog steeds aan het puzzelen, ofwel je hebt allang een oplossing bedacht... Voor het geval je in de eerste situatie zit, helpt een voorbeeldje wellicht. Bij deze dus!
De controle kun je op twee manieren uitvoeren: achteraf (met de knop) of tijdens het invoeren. Die laatste variant heb ik toegepast op controle op foutieve tekens, en op teveel cijfers. De check op lengte kun je denk ik zelf wel toevoegen.
 

Bijlagen

Hoi Michel, excuus voor de late reactie.

Ik was inderdaad nadat ik de vraag had gesteld nog even gaan puzzelen..., een minimale veldlengte was me nog wel gelukt maar met mijn gebrekkige kennis van VBA zou me dit nooit zijn gelukt.

Ik wil je niet onthouden wat ik had gepuzzeld, middels een formule in een tekstvak kan ik per karakter bepalen of deze numeriek is of niet (met als resultaat 0 of 1) dan is het een kwestie van optellen en als de uitkomst dan geen 2 is een pop-up, ik liep daarbij tegen 2 problemen aan, de eerste is dat ik het maximale aantal karakters niet weet (dat zou ik kunnen ondervangen door een maximale lengte in te stellen op basis van de nu bekende items) maar de 2e kon ik niet zo snel oplossen, op het moment dat het resultaat 0 is (dus bij een letter) gaf de formule #Type! als resultaat, ik dacht dat ik die kon ondervangen (zoals bij Excel) met IsError maar daar kwam ik niet uit en zag inmiddels dat je had gereageerd met een voorbeeldje :thumb:

Mijn dank hiervoor, ik ga dit morgen verder uitwerken en ik vermoed dat het hiermee gaat lukken.

Groetjes,
Dave
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan