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

tekstvakken userform leegmaken lukt niet

Status
Niet open voor verdere reacties.

blueberry013

Gebruiker
Lid geworden
23 mei 2011
Berichten
111
Hallo!

Hoe kan ik alle tekstvakken in een userform leegmaken na saven

Ik heb voor het saven Unload me...
Maar als ik daarna die userform terug oproep staan de gegevens er soms nog in. Als ik de userform dan afsluit met het kruisje en terug oproep is wel alles leeg....

Hoe komt dit? en is er een oplossing voor?

Alvast bedankt

Hieronder de gebruikte code...

Code:
Private Sub ordersave_Click()

    On Error Resume Next
    
    Application.ScreenUpdating = False

    lastrow = ActiveSheet.UsedRange.Rows.Count + 2
    
    Worksheets(naam).Cells(lastrow, 5) = orderweek 'week
    Worksheets(naam).Cells(lastrow, 6) = orderprioriteit 'prioriteit
    Worksheets(naam).Cells(lastrow, 7) = orderactiviteit 'activiteit
    Worksheets(naam).Cells(lastrow, 8) = hflijn 'lijn
    Worksheets(naam).Cells(lastrow, 9) = ordermo 'mo

    Unload Me

    MsgBox "Order ingevoerd", vbInformation
    
    Application.ScreenUpdating = True
        
End Sub
 
Laatst bewerkt door een moderator:
blueberry013,

Je moet hem natuurlijk wel vertellen dat de textboxxen leeg gemaakt moeten worden.
Kijk maar bij de onderstaande link, daar staat een stukje code van Warme bakkertje. (onderaan)

Kijk hier maar eens.

Graag de volgende keer de code selecteren en dan boven in het menu op # klikken.
Nu komt je code in een apart vak te staan.
 
Laatst bewerkt:
Bedankt voor de snelle reactie. heb deze code geprobeerd, maar dit lukt niet. geeft het zelfde resultaat.
Of waar moet ik deze code plaatsen? Hoe pas ik ze in in mijn code?
 
blueberry013,

De code van Warme bakkertje hoort achter het Userform.
Zet anders het bestandje met het formulier even hier.
Het is veel makkelijker praten met een voorbeeld, anders is het maar gissen.

Je heb dit in januari ook al gevraagd, daar werd door SNB ook al om een voorbeeld gevraagd.
Dus als je goed geholpen wil worden zet dan een voorbeeld hier.
 
Laatst bewerkt:
Dit is je eigen code waarbij de oplossing van Warme bakkertje is geïntegreerd:

Code:
Private Sub ordersave_Click()
    Dim ctrl As Control

    On Error Resume Next
    
    Application.ScreenUpdating = False

    lastrow = ActiveSheet.UsedRange.Rows.Count + 2
    
    Worksheets(naam).Cells(lastrow, 5) = orderweek 'week
    Worksheets(naam).Cells(lastrow, 6) = orderprioriteit 'prioriteit
    Worksheets(naam).Cells(lastrow, 7) = orderactiviteit 'activiteit
    Worksheets(naam).Cells(lastrow, 8) = hflijn 'lijn
    Worksheets(naam).Cells(lastrow, 9) = ordermo 'mo

    For Each ctrl In Me.Controls
        If TypeOf ctrl Is MSForms.TextBox Then
            ctrl.Text = vbNullString
        End If
    Next

    Unload Me

    MsgBox "Order ingevoerd", vbInformation
    
    Application.ScreenUpdating = True
        
End Sub
 
Code:
Worksheets(naam).Cells(lastrow, 5) = orderweek 'week
    Worksheets(naam).Cells(lastrow, 6) = orderprioriteit 'prioriteit
    Worksheets(naam).Cells(lastrow, 7) = orderactiviteit 'activiteit
    Worksheets(naam).Cells(lastrow, 8) = hflijn 'lijn
    Worksheets(naam).Cells(lastrow, 9) = ordermo 'mo

kan je ook vervangen door

Code:
For i = 1 To 5
        Worksheets(naam).Cells(lastrow, i + 4) = Choose(i, orderweek, orderprioriteit, orderactiviteit, hflijn, ordermo)
    Next
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan