invoermasker

Status
Niet open voor verdere reacties.

Noel Prove

Gebruiker
Lid geworden
16 jul 2006
Berichten
98
Hallo,

In een adressenbestand heb ik naast het hoofdformulier met de persoonlijke gegevens,
een subformulier waarin de telefoon- en gsm gegevens van ieder persoon in worden bewaard.

Hiervoor heb ik een tabel "tbladressen" en "tblTelefoonnummers" die aan elkaar gerelateerd zijn.
In de tabel "Telefoonnummers" heb ik de volgende velden:

TelefoonnummerID
Telefoonnummer
Telefoon_Type : het is de bedoeling om hier de selectie "GSM werk", "GSM prive", "Telefoon werk" of "Telefoon prive"
in op te slaan.
Aan de hand van deze selectie zou ik het invoermasker van het veld "Telefoonnummer" automatisch willen laten veranderen.
Voor GSM nummers : 0###"/"##.##.##
voor telefoonnummers : ###\-###.###.###

Ik heb een beetje gegoogeld en had gedacht aan de volgende code

Code:
Private Sub Form_Current()
    Select Case Me.Telefoon_Type.Value
        Case "GSM werk"
            Me.Telefoonnummer.InputMask = 0###"/"##.##.##"
        Case "GSM prive"
            Me.Telefoonnummer.InputMask = 0###"/"##.##.##"
        Case "Telefoon prive"
            Me.Telefoonnummer.InputMask = ###\-###.###.###
        Case "Telefoon werk"
            Me.Telefoonnummer.InputMask = ###\-###.###.###

    End Select
End Sub

Jammer genoeg is mijn kennis van VBA niet goed genoeg om dit
uit te werken.
Kan iemand mij hierbij een handje helpen a.u.b. ?

Alvast bedankt.
 
Laatst bewerkt door een moderator:
Heb je je code al uitgetest dan? En waarom staat de code niet in CODE tags? :). Maar de gebeurtenis <Bij aanwijzen> is dus helemaal niet handig, want die wordt alleen uitgevoerd bij het bladeren door je records. Op dat moment hoeft je masker helemaal niet te veranderen.... Dat is alleen nodig als je een andere keuze in de keuzelijst maakt, dus dat lijkt mij de aangewezen plek om de code achter te hangen. Bij voorkeur bij de gebeurtenis <Bij klikken>.
 
Hallo OctaFish,

Bedankt voor de support.

Ik heb de code reeds onder verschillende gebeurtenissen geplaatst en uitgeprobeert,
maar telkenmale krijg ik een foutmelding (zie bijlage).
 

Bijlagen

  • Foutmelding inpustmask.png
    Foutmelding inpustmask.png
    36,5 KB · Weergaven: 52
Plaats even een voorbeeldbestandje, want de structuur zou moeten kunnen werken.
 
Noel,

Je hebt je keuzelijst de naam cboTelefoon_Type gegeven maar in je Select Case gebruik je Me.Telefoon_Type , dit veroorzaakt de foutmelding.

Ik heb jouw code als volgt aangepast en (bij mij) werkt het :

Code:
Private Sub cboTelefoon_Type_Click()

Select Case Me.cboTelefoon_Type.Value
    Case "GSM werk"
        Me.Telefoonnummer.InputMask = "\0###/##\.##\.##"
    Case "GSM prive"
        Me.Telefoonnummer.InputMask = "\0###/##\.##\.##"
    Case "Telefoon prive"
        Me.Telefoonnummer.InputMask = "###\-###\.###\.###"
    Case "Telefoon werk"
        Me.Telefoonnummer.InputMask = "###\-###\.###\.###"
End Select

End Sub

en je kan de code nog vereenvoudigen tot :

Code:
Private Sub cboTelefoon_Type_Click()

Select Case Me.cboTelefoon_Type.Value
    Case "GSM werk", "GSM prive"
        Me.Telefoonnummer.InputMask = "\0###/##\.##\.##"
    Case "Telefoon prive", "Telefoon werk"
        Me.Telefoonnummer.InputMask = "###\-###\.###\.###"
End Select

End Sub

Paul
 
Laatst bewerkt:
Met IntelliSense aan had je deze 'typefout' zelf ook gevonden uiteraard, want als je keuzelijst cboTelefoon_Type heet, dan zou hij automatisch moeten opduiken als je Me.cbo typt; zie je alle objecten die met çbo' beginnen. Het typen van Me.Tel levert dan niks op.
 
Hallo,
Bedankt voor de support en via deze aan iedereen mijn beste wensen voor het nieuwe jaar !

Inderdaad, dat is het probleem. Bedankt voor de ondersteuning !
Ik heb nog een probleempje met het al dan niet verbergen van een subrapport maar ik
ga hiervoor een nieuw onderwerp aanmaken.

Groetjes, Noël.
 
Prima! Zien we graag tegemoet :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan