Bij bepaalde celwaarde, rij kopieren naar ander werkblad

Status
Niet open voor verdere reacties.

Jrmerfol

Nieuwe gebruiker
Lid geworden
29 okt 2015
Berichten
4
Hallo,

Ik heb een Excel bestand waar issues worden bijgehoudenm deze bestaat uit de kolommen A t/m O.
In kolom K wordt de status van de issue weergeven met ''Open" of "Gesloten".
Nu zou ik graag willen dat wanneer de status "Gesloten" is, dat deze issue wordt gekopieerd naar een ander werkblad en uit het huidige werkblad wordt verwijderd.

Ik heb al eea rond gezocht, maar kom er toch niet uit. Kan iemand me hiermee op weg helpen?

Alvast bedankt!
 
Welkom op Helpmij :)
Plaats even een relevant voorbeeld documentje.
 
Voorbeeldbestand

Hierbij een voorbeeldbestand.
Het gaat dus om het uitvoeren van de eerder beschreven actie op werkblad "Issues" naar werkblad "Afgerond".
Het kopieren van de inhoud van de betreffende rij in kolom A t/m O en de criteria "Open"/"Gesloten" in kolom K.

Bekijk bijlage Voorbeeldbestand.xlsx
 
En die actie moet direct worden uitgevoerd op het moment dat Open in Gesloten veranderd?
 
Gelukkig, ik was niet de enige met moeite om de laatste rij te vinden.:d

Met een iets andere methode

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Column = 11 And Target.Count <> 1 Then Exit Sub
    Application.EnableEvents = False
    If Target.Value = "Gesloten" Then
        With Sheets("Afgerond").Cells(2, 1)
            If .Offset(1) = "" Then
                .Offset(1).Resize(, 14) = Cells(Target.Row, 1).Resize(, 14).Value
              Else
                .End(xlDown).Offset(1).Resize(, 14) = Cells(Target.Row, 1).Resize(, 14).Value
            End If
        End With
        Cells(Target.Row, 1).EntireRow.Delete
    End If
    Application.EnableEvents = True
End Sub
 
Laatst bewerkt:
Je hebt me door :P
 
Het werkt, heel erg bedankt!
Ik heb beide methoden geprobeerd en bij de methode van Edraam creëert hij in het tabblad ‘Afgerond’ een hele reeks aan naamloze extra kolommen. Dus heb nu de methode van xxx gebruikt.

Dan heb ik nog wel 1 vraagje m.b.t de methode.
Als ik onderstaande code wat wil aanpassen voor een andere Excel lijst, en ik wil alleen bepaalde kolommen kopiëren naar specifieke kolommen op een ander werkblad, wat dien ik dan hiervoor aan te passen?

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Column = 11 And Target.Count <> 1 Then Exit Sub
    Application.EnableEvents = False
    If Target.Value = "Gesloten" Then
        With Sheets("Afgerond").Cells(2, 1)
            If .Offset(1) = "" Then
                .Offset(1).Resize(, 14) = Cells(Target.Row, 1).Resize(, 14).Value
              Else
                .End(xlDown).Offset(1).Resize(, 14) = Cells(Target.Row, 1).Resize(, 14).Value
            End If
        End With
        Cells(Target.Row, 1).EntireRow.Delete
    End If
    Application.EnableEvents = True
End Sub
 
Omdat je er niet bij zet wat je zoal van waar naar waar wil neerzetten is het antwoord dus ook kort.

Code:
.Offset(1).Resize(, 14) = Cells(Target.Row, 1).Resize(, 14).Value
zal je aan moeten passen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan