xlsvbah19.3

VERSION 5.00
Begin {C62A69F0-16DC-11CE-9E98-00AA00574A4F} frm3Antwoorden 
   Caption         =   "UserForm1"
   ClientHeight    =   4380
   ClientLeft      =   120
   ClientTop       =   465
   ClientWidth     =   7305
   OleObjectBlob   =   "frm3Antwoorden.frx":0000
   StartUpPosition =   1  'CenterOwner
End
Attribute VB_Name = "frm3Antwoorden"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

Option Explicit

Dim Contacten As clsContacten
Dim blnToevoegen As Boolean

Private Sub UserForm_Initialize()

'   Opdracht 1: koppel de initaliseer gebeurtenis aan de klassenmodule

    Set Contacten = New clsContacten

    Me.Caption = "Excel VBA training"
    
    With lstContacten
        .ColumnCount = 4
        .ColumnWidths = "20;75;75;20"
    End With
        
    Contacten.Laad lstContacten

End Sub

Private Sub cmdToevoegen_Click()

'   Opdracht 2: koppel de toevoeg-knop aan de klassenmodule

    blnToevoegen = True
    
    txtVoornaam.Text = ""
    txtAchternaam.Text = ""
    
    optMan.Value = False
    optVrouw.Value = False
    
    txtVoornaam.SetFocus

End Sub

Private Sub cmdOpslaan_Click()

'   Opdracht 3: koppel de opslaan-knop aan de klassenmodule

    Dim strGeslacht As String
    
    If optMan.Value = True Then
        strGeslacht = "M"
    Else
        strGeslacht = "V"
    End If

    If blnToevoegen = True Then
        Contacten.Toevoegen txtVoornaam.Text, txtAchternaam.Text, strGeslacht
        blnToevoegen = False
    Else
        Contacten.Wijzig CInt(lstContacten.List(lstContacten.ListIndex, 0)), txtVoornaam.Text, txtAchternaam.Text, strGeslacht
    End If

    Contacten.Laad lstContacten

End Sub

Private Sub cmdVerwijderen_Click()
    
'   Opdracht 4: koppel de verwijder-knop aan de klassenmodule
    
    With Contacten
        .Verwijder lstContacten.List(lstContacten.ListIndex, 0)
        .Laad lstContacten
    End With

End Sub

Private Sub lstContacten_Click()

    plaatsContacten

End Sub

Private Sub lstContacten_Enter()

    plaatsContacten

End Sub

Private Sub lstContacten_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

    plaatsContacten

End Sub

Sub plaatsContacten()
    
    txtVoornaam = lstContacten.List(lstContacten.ListIndex, 1)
    txtAchternaam = lstContacten.List(lstContacten.ListIndex, 2)
    
    If lstContacten.List(lstContacten.ListIndex, 3) = "M" Then
        optMan.Value = True
    Else
        optVrouw.Value = True
    End If

End Sub



Download hier het bestand.