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

Userform krijg ik niet werkende

Status
Niet open voor verdere reacties.

davylenders123

Gebruiker
Lid geworden
20 jun 2010
Berichten
902
Ik heb een userform die ik reeds al in verschillende documenten werkende heb gekregen.
Wou deze nu nog in een ander document invoegen maar krijg hem maar niet werkende.
Hij blijft steeds vastlopen op de regel

Code:
 Sheets("Data").ListObjects(1).ListRows.Add.Range.Resize(, 28) = ar

De volledige code
Code:
Private Sub cmmndToevoegen_Click()
  Dim ar(1 To 28)
  For Each fr In Me.Controls
    If TypeName(fr) = "Frame" Then
      For Each ob In fr.Controls
        If TypeName(ob) = "OptionButton" Then
          If ob Then
            ar(fr.Tag) = ob.Caption
            Exit For
          End If
        End If
      Next ob
    End If
  Next fr


  ar(2) = txtVoornaam
  ar(3) = txtAchternaam
  ar(4) = txtPersoneelsnummer
  ar(5) = txtGeboortedatum
  ar(6) = txtPasnummer
  ar(7) = txtChipnummer
  ar(8) = cbDienstafdeling
  ar(9) = cbSubco
  ar(10) = cbToegangsniveau
  ar(11) = cbSatusaanvraag
  ar(16) = txtLaatstebewijsgoedgedrag
  ar(17) = Format(LblDatum, "mm-dd-yyyy")
  ar(18) = cbStatus
  ar(19) = txtFotoid
  ar(20) = txtWagenid
  ar(21) = txtGebruikersnaam1
  ar(22) = txtWachtwoord1
  ar(23) = txtGebruikersnaam2
  ar(24) = txtWachtwoord2
  ar(26) = txtDatumuitdienst
  ar(28) = txtExtrainfo
  
  'ar(6) = Format(Lbldatumbestelling, "mm-dd-yyyy")
 Sheets("Data").ListObjects(1).ListRows.Add.Range.Resize(, 28) = ar
  
  Unload Me
End Sub


Private Sub UserForm_Initialize()


LblDatum = Format(Date, "dd-mm-yyyy") ' Zet automatisch de datum bij datum het label
 
 
End Sub

Private Sub LblDatum_Click() 'zet datum in label Lbldatum vanuit de popup kalender
    Set dv = frmNieuwewerknemer.LblDatum
  Kalender.Show
End Sub

Kan er eens iemand naar kijken wat ik fout doe ?
 

Bijlagen

  • Map1.xlsm
    208,9 KB · Weergaven: 64
Laatst bewerkt:
uw list is vol. coventeer uw lijst naar een bereik en maak een nieuwe lijst met enkel de gevulde rijen.
 
Excel denkt dat het gehele werkblad is gevuld. Selecteer cel A4 en druk op control+shift+End. rechtsklik in het bereik en kies verwijderen, gehele rijen verwijderen. Sla het bestand op.
 
De code kan ook nog wat eenvoudiger.

Code:
Private Sub cmmndToevoegen_Click()
  Dim ar(1 To 28)
  For Each ct In Me.Controls
    Select Case TypeName(ct)
      Case "Frame"
        For Each ob In ct.Controls
          If TypeName(ob) = "OptionButton" Then
            If ob Then ar(ct.Tag) = ob.Caption
            Exit For
          End If
        Next ob
      Case "TextBox"
        ar(ct.Tag) = ct.Text
    End Select
  Next ct
  ar(1) = ar(3) & " " & ar(2)
  ar(17) = Format(LblDatum, "mm-dd-yyyy")
  Sheets("Data").ListObjects(1).ListRows.Add.Range.Resize(, 28) = ar
End Sub
 
Alle

Hartelijk dank voor jullie zeer snelle reacties en oplossingen weer.:thumb:
Als ik de list aanpas is het probleem verholpen.
Kunnen jullie vertellen hoe jullie dit juist gevonden hebben waar het probleem zat ? Of is dit te moeilijk om uit te leggen.


VenA ik heb je eenvoudiger manier proberen toe te passen en alles werkt , enkel de comboboxen worden niet overgenomen in de sheet.
De comboboxen moeten waarschijnlijk nog in je code worden opgenomen , maar zou niet weten hoe en waar ik deze moet plaatsen.

In u versie zit ook in, dat de formule die in kolom A staat wordt doorgevoerd bij een nieuwe ingaven wat ook de bedoeling is , dank hiervoor :thumb: Was nog een volgende vraag van mij maar heb je reeds opgelost :thumb::thumb:
 
De foutmelding die je krijgt is duidelijk genoeg.

Hoe moeilijk kan het zijn om ook even de comboboxen, die toch leeg zijn, mee te nemen?

Code:
Case "ComboBox"
        ar(ct.Tag) = ct.Text

even toevoegen

of
Code:
Case "TextBox", "ComboBox"
        ar(ct.Tag) = ct.Text
 
De foutmelding Sorry :eek: inderdaad deze wordt duidelijk omschreven.
Ik klikte gewoon steeds op foutopsporing maar boven deze knop wordt de fout helemaal uitgelegd.
Dit heb ik ook alweer bij geleerd.
Sorry voor mijn domme vragen:eek:

Niets is moeilijk , als je maar weet hoe je het moet doen he ;)

Alle bedankt voor jullie hulp opnieuw :thumb:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan