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

VBA code Excel

Status
Niet open voor verdere reacties.

SanneM

Gebruiker
Lid geworden
20 apr 2010
Berichten
19
Ik heb een vraag over een VBA code.

Ik gebruik nu deze:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
If Target.Value = "Afgehandeld" Then
Range(Target.EntireRow.Address).Cut Blad2.Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End If
End If
End Sub

Als ik "Afgehandeld" typ in tabblad 1, verdwijnt de hele rij naar tabblad 2. Nu werkt dit super, maar nu is de vraag; kan ik meerdere woorden toevoegen? Soms typen ze "afgehandeld" zonder hoofdletter en dan blijft de rij natuurlijk staan.

Had ik nog een vraag, zodra de rij verplaatst is naar tabblad 2, blijft er een lege rij/witte rij over. Kan deze er dan uitgeknipt worden? Dat er geen gaten vallen in de lijst (is een to do lijst).

Ben zelf niet heel handig met VBA, dus waardeer jullie hulp enorm! Kijk uit naar de reacties.
 
Laatst bewerkt:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
    If UCase(Target.Value) = "AFGEHANDELD" Then
        Range(Target.EntireRow.Address).Copy Blad2.Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
        Target.EntireRow.Delete xlUp
    End If
End If
End Sub
 
Laatst bewerkt:
Wat een snelle reactie!

Heb het meteen geprobeerd, en idd het werkt! Dank je!

Heb alleen nu wel dat op tabblad 2 de rijen steeds overschreven worden. Ik wil graag dat alles wat afgehandeld is onder elkaar op tabblad 2 komt te staan.

Hoe zou dat kunnen?

Heb een voorbeeld van de excelfile toegevoegd.
 

Bijlagen

Laatst bewerkt:
De code uit Post#2 werkt perfect, je moet er enkel voor zorgen dat de cel in kolom A van de te kopieëren rij nooit leeg is in je bronblad (issues 2012)
 
Heb het nogmaals geprobeerd, hij doet het idd wel.
Alleen laat hij de tekst ook staan op tabblad 1, heb copy in cut veranderd in de code en werkt het perfect!

Alleen nu laat hij nog wel lege/witte rijen achter op tabblad 1. Maar dat is ook niet zo erg.

Super bedankt!
 
Heb je de code in post#2 al eens goed bekeken ?? Daar staat een regel bij die de bronregel wist na het copieëren.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
    If UCase(Target.Value) = "AFGEHANDELD" Then
        Range(Target.EntireRow.Address).Copy Blad2.Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
        [COLOR="red"]Target.EntireRow.Delete xlUp[/COLOR]
    End If
End If
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan