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

vewijderde rij opslaan in andere sheet

Status
Niet open voor verdere reacties.

don42

Gebruiker
Lid geworden
25 apr 2014
Berichten
800
Beste allemaal ik heb weer eens een vraag

In het voorbeeldje zie je in het blad vos
een aantal namen staan.
als ik op verwijderen klik word de naam en de gemeente gewist (hele rij)
is het mogelijk om de gegevens die ik verwijder, eerst op te slaan in tablad save (voor als ik het nog een terug wil zetten)
en dan pas de rij te verwijderen.

als dit kan is de volgende stap een userform die alles weer terug zet
maar eerst maar eens zien of mijn eerste vraag mogelijk is.

Don
Bekijk bijlage Testopkomstlijst2.0.xlsb
 
Voor je openingsvraag.
Code:
Private Sub CommandButton1_Click()
If ListBox1.ListIndex > -1 Then
    If MsgBox("Weet je zeker dat je vos" & vbNewLine & waarde & vbNewLine & _
        "Wilt verwijderen uit de lijst?", vbYesNo + vbQuestion, "Vos verwijderen?") = vbYes Then
        With Sheets("Vos")
            Sheets("save").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(, 3) = .Cells(ListBox1.ListIndex + 2, 1).Resize(, 3).Value
            .Rows(ListBox1.ListIndex + 2).Delete
            ListBox1.List = .Range("c2:c" & .Cells(.Rows.Count, 2).End(xlUp).Row).Value
        End With
    End If
 Else
    MsgBox "Je geen naam geselecteerd om te verwijderen", , "Selecteer een naam"
End If
End Sub
 
Hsv
bedankt voor je hulp
de code ziet er veel beter uit nu
het verplaatsen naar de tab gaat ook goed.....alleen
er moet eigenlijk gekeken worden naar een lege rij en daar plaatsen
 
Misschien kun je het beter bij je andere vraag houden.
@Warme bakkertje heeft daar namelijk ook een code voor geschreven.
Misschien zit ik hier wat te maken terwijl dat andere beter of handiger is.
 
Ik heb die andere vraag gesloten, zo zie ik tussen de bomen het bos niet meer.
 
Laatst bewerkt:
het opslaan naar sheet save is prima, maar niet overschrijven. lege rij kiezen
dat zou fijn zijn
 
Leuk is wel anders, een vraag zonder boe of ba als opgelost markeren.:confused:
Code:
Private Sub Userform_initialize()
    With Sheets("Vos")
        ListBox1.List = .Range("c2:c" & .Cells(.Rows.Count, 2).End(xlUp).Row).Value
    End With
    CommandButton1.Visible = False
End Sub

Private Sub ListBox1_Click()
    CommandButton1.Visible = True
End Sub

Private Sub CommandButton1_Click()
    With Sheets("Vos")
        Sheets("save").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(, 2) = .Cells(ListBox1.ListIndex + 2, 2).Resize(, 2).Value
        .Rows(ListBox1.ListIndex + 2).Delete
        ListBox1.List = .Range("c2:c" & .Cells(.Rows.Count, 2).End(xlUp).Row).Value
    End With
    CommandButton1.Visible = False
End Sub

Private Sub CommandButton2_Click()
    Unload Me
End Sub
 
Zou ik aan je andere vraag toch nog een melding geven als ik jou was.
@Warme bakkertje denkt straks "bekijk het maar met je vragen".
Je kan altijd melden dat je er op terug komt.
Ik heb de code daar niet getest, maar bovengenoemde kennende is het vast een mooie/betere oplossing.

Code:
Private Sub CommandButton1_Click()
If ListBox1.ListIndex > -1 Then
    If MsgBox("Weet je zeker dat je vos" & vbNewLine & waarde & vbNewLine & _
        "Wilt verwijderen uit de lijst?", vbYesNo + vbQuestion, "Vos verwijderen?") = vbYes Then
        With Sheets("Vos")
            Sheets("save").Cells(Rows.Count, 2).End(xlUp).Offset(1,-1).Resize(, 3) = .Cells(ListBox1.ListIndex + 2, 1).Resize(, 3).Value
            .Rows(ListBox1.ListIndex + 2).Delete
            ListBox1.List = .Range("c2:c" & .Cells(.Rows.Count, 2).End(xlUp).Row).Value
        End With
    End If
 Else
    MsgBox "Je geen naam geselecteerd om te verwijderen", , "Selecteer een naam"
End If
End Sub

Edit: Ik zat er niet naast zo te zien. :rolleyes:
 
Laatst bewerkt:
Heren mijn excuus
Niks is minder waar ik waardeer jullie hulp zeer.
en iedere keer weer blij met jullie oplossingen
zat me hier op me zelf te ergeren en zal nooit geen twee vragen tegelijk meer openen.
Had ik nu ook niet tot W bakkertje met een mooie oplossing kwam op een reeds gesloten vraag van mij.
 
#9
Warme bakkertje
dit is wat ik zocht dank je wel
Ik heb ook die Msgbox weggelaten.
 
de laatste stap

ik heb het bestandje aangepast
nu wil ik nog graag de optie om van save weer teug te zetten naar vos (zie bestandje)
ik heb een nieuwe userform4 aangemaakt en dacht het om te draaien met userform3
dat lukt mij dus niet.
wie helpt me verder?
Bekijk bijlage Testopkomstlijst2.0-22.xlsb
 
Je kan ook nog kiezen voor 'Remove'.
Code:
Private Sub CommandButton1_Click()
    With Sheets("save")
        Sheets("Vos").Cells(Rows.Count, 2).End(xlUp).Offset(1).Resize(, 2) = .Cells(ListBox1.ListIndex + 1, 1).Resize(, 2).Value
        .Rows(ListBox1.ListIndex + 1).Delete
[COLOR=#3366ff]        ListBox1.RemoveItem (ListBox1.ListIndex)[/COLOR]
[COLOR=#3366ff]        ListBox1.ListIndex = -1[/COLOR]
        'ListBox1.List = .Range("A1:B" & .Cells(.Rows.Count, 1).End(xlUp).Row).Value
    End With
    CommandButton1.Visible = False
End Sub
 
Dank je wel beide oplossingen werken perfect
mijn dank is groot.
:thumb:
 
Warme bakkertje
Ik ben echt al uren bezig met het zoeken naar een oplossing maar het lukt mij niet.
In de userform4 terugzetten
staat de boevenst regel save. dit wil ik liever niet maar gelijk een naam.
Als je hier de oplossing voor weet, wil ik heel heel graag weten waar je wat hebt aangepast
want ik word gestoord van dat ik het niet zelf kan vinden
 
Verander in de 'Initialize'.
Code:
 ListBox1.List = .Range("A2:B" & Application.Max(2, .Cells(Rows.Count, 1).End(xlUp).Row)).Value

In Commandbutton1_click.
Wijzig....
Code:
.Rows(ListBox1.ListIndex + 1).Delete
        ListBox1.RemoveItem (ListBox1.ListIndex)
        ListBox1.ListIndex = 0: ListBox1.ListIndex = -1
....in.
Code:
  .Rows(ListBox1.ListIndex + 2).Delete
        ListBox1.RemoveItem (ListBox1.ListIndex)
     ListBox1.ListIndex = -1
 
Laatst bewerkt:
@ Harry
Code:
ListBox1.ListIndex = 0: ListBox1.ListIndex = -1
Dit heb ik gedaan omdat bij gebruik van enkel -1 de listbox onderaan blijft staan.
Op deze manier scroll je terug naar de 1ste positie.
Zie bijlage.
 

Bijlagen

Laatst bewerkt:
Hoi,
Ik heb het aangepast (in userform4)
raar genoeg blijft userform in tabblad 'Vos' nu leeg!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan