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

rijen kopieren naar ander werkblad

Status
Niet open voor verdere reacties.

nothere

Gebruiker
Lid geworden
12 mrt 2006
Berichten
45
Hallo
Ik wil rijen kopieren naar een ander werkblad,
op basis van een waarde in verschillende cellen in werkblad 1

Heb van alles geprobeerd,maar nu zie ik door de bomen het bos niet meer.

Wie wil of kan mij (op weg )helpen.

Alvast bedankt

Nothere
 

Bijlagen

het voorbeeld dat je geeft, is enerzijds duidelijk, maar vanwaar komt het woord fout? moeten ze gekopieerd worden of ook verwijderd? in het laatste geval is het zeker VBA.

groeten,

steven
 
antwoord

sorrie met foutwaarde bedoelde ik het woord fout in de cellen.
fout kan ook een ander woord zijn.
 
Hoi is dit ongeveer wat je zoekt. Ik zeg er wel bij dat je nog iets aan de cosmetische zooi kan doen door bijvoorbeeld eerst blad 2 leeg te maken voor je de waardes daarheen kopieert.

Voor mensen die geen zin hebben om de bijlage te openen, dit is de code:

Code:
Sub SpecialCopy()
    Dim rngAll As Range
    Dim rngCell As Range
    Dim rij As Integer
    
    'Hier bepaal ik hoe groot het bereik is waar we op fout moeten
    'controleren
    
    Set rngAll = Range("A1:E11")
    
    'ik heb een extra rij als variabele toegevoegd om te voorkomen
    'dat we een rij 2 keer kopieren, mocht deze 2 keer een fout
    'bevatten.
    
    'hier lopen we de code door voor elke cel in ons bereik
    For Each rngCell In rngAll.Cells
        'wanneer de waarde van de cel fout is
        'en de rij niet al eerder was gekopieerd
        'dan moeten we hem kopieren
        If rngCell.Value = "fout" And rij < rngCell.Row Then
          Rows(rngCell.Row & ":" & rngCell.Row).Copy
          
          'vervolgens ga ik naar blad 2 om het daar te plakken
          Sheets("Blad2").Select
          ActiveSheet.Paste
          'we gaan 1 cel naar beneden om niet over de oude waardes
          'te plakken
          ActiveCell.Offset(1, 0).Select
          Sheets("Blad1").Select
        End If
    Next
    Application.CutCopyMode = False
End Sub
 

Bijlagen

Bedankt

Ja hier kan ik wat mee.
bedankt ,ook voor de uitleg.

Ik merk dat ik me wat meer in range (rijen) moet concentreren.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan