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

Gegevens validatie met autocomplete

Status
Niet open voor verdere reacties.

gerrit098

Gebruiker
Lid geworden
6 jun 2012
Berichten
68
Beste forum leden,


Ik gebruik in mijn eigen boekhoudsysteem dat ik met veel hulp van dit forum heb gemaakt in excel.


Nu gebruik ik bij het maken van de facturen veelal gegevens validatie. dat is handig maar niet als er veel keuzes zijn....
is het ook mogelijk om gegevens validatie met een autocomplete functie

als ik dus in de het huidige lijst een C in toets er alleen Cappuccino en Cola overblijft.


met vriendelijke Groet,

Gerrit van der Laag
 

Bijlagen

  • BOEKHOUDING.xlsm
    266,8 KB · Weergaven: 39
Hartelijk dank,

Dit is wel wat ik bedoel.
maar of het handig is om er 30+ onder elkaar van te maken ga ik uitzoeken...


alvast bedankt, maar als iemand nog betere en of makkelijker te vermenigvuldigen heeft hoor ik het graag!

mvg gerrit
 
Misschien zo
Dubbelklik in een van de cellen in uw kolom beschrijving (gegevens validatie) en typ iets c of t ...
 

Bijlagen

  • BOEKHOUDING.xlsm
    255,6 KB · Weergaven: 82
Stap 1
Ga naar het tabblad ontwikkelaars -> invoegen
Stap1.PNG
Stap 2 & 3
Voeg een ActiveX ComboBox in
Stap2.png
(ergens op uw blad Facturen maken)
Stap3.png
Stap 4
Ga naar de eigenschappen van de ComboBox
Stap4.png
Stap 5
Geef uw ComboBox de naam TempCombo (of verander de code)
Stap5.png
Stap 6
Open de VBA editor of klik rechts op het tabblad Facturen maken -> Programmacode weergeven
Stap6.png
Stap 7
Voeg de code toe (worksheet Facturen maken)
Aan de code hoef je niets te veranderen
Stap7.png
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim xStr As String
    Dim xCombox As OLEObject
    Dim xWs As Worksheet
    Set xWs                  = Application.ActiveSheet
    On Error Resume Next
    Application.EnableEvents = False
    Set xCombox              = xWs.OLEObjects("TempCombo")
    With xCombox
        .ListFillRange          = ""
        .LinkedCell             = ""
        .Visible                = False
    End With
    If Target.Validation.Type = 3 Then
        Cancel          = True
        xStr            = Target.Validation.Formula1
        xStr            = Right(xStr, Len(xStr) - 1)
        With xCombox
            .Visible       = True
            .Left          = Target.Left
            .Top           = Target.Top
            .Width         = Target.Width + 5
            .Height        = Target.Height + 5
            .ListFillRange = xStr
            .LinkedCell    = Target.Address
        End With
        xCombox.Activate
        Me.TempCombo.DropDown
    End If
    Application.EnableEvents = True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim xCombox As OLEObject
    Dim xWs As Worksheet
    Set xWs = Application.ActiveSheet
    On Error Resume Next
    Application.EnableEvents = False
    Application.ScreenUpdating = True
    Set xCombox = xWs.OLEObjects("TempCombo")
    With xCombox
        .Top = 10
        .Left = 10
        .Width = 0
        .ListFillRange = ""
        .LinkedCell = ""
        .Visible = False
        .Value = ""
    End With
    Application.EnableEvents = True
End Sub
Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    Select Case KeyCode
        Case 9
            Application.ActiveCell.Offset(0, 1).Activate
        Case 13
            Application.ActiveCell.Offset(1, 0).Activate
    End Select
End Sub
Stap 8
Sluit de VBA editor en test
Stap8.png
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan