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

rij verplaatsen naar ander tablad afhankelijk van celwaarde

Status
Niet open voor verdere reacties.

rhoogland

Gebruiker
Lid geworden
23 jul 2009
Berichten
7
Hoi allen,

Vragen bij bijgevoegd bestand;
1. Hoe kan de rij waarin de status afgerond staat (rij D of rij G) automatisch in zijn geheel worden geknipt uit dit tabblad en geplaatst worden in het tabblad "Afgerond".

2. Mocht de rij op het tabblad "Afgerond" staan en daar wordt de status weer veranderd naar Open kan deze automatisch dan terug worden geplaatst als laatste in de rij met actie's?

Hopelijk is dit mogelijk dmv een macro te realiseren, graag jullie hulp hierbij.

Mocht het niet duidelijk zijn wat ik bedoel dan hoor ik dat graag..

Gr,

rhoogland
 

Bijlagen

  • actielijst 29-7-2009.xls
    43,5 KB · Weergaven: 56
Hoi allen,


Hopelijk is dit mogelijk dmv een macro te realiseren, graag jullie hulp hierbij.


rhoogland

Het kan middels een macro , bekijk bestandje .
@Rudi ;) ik heb gepiept maar zit fout met c.Rows.EntireRow.Delete (xlUp) ( kruip nu in mijn bedje voor +/- 4 uurtjes )
 

Bijlagen

  • actielijst29-7-2009(1).xls
    84 KB · Weergaven: 97
Beste rhoogland ;)

Heb een poging geprobeerd.

Zet een knopje in tabblad Agerond met de volgende code

Code:
Sub Naaractielijst()
    Application.ScreenUpdating = False
   Dim c As Range
   For Each c In [G5:G1000]
        If c = "Afgerond" Then
            c.Rows.EntireRow.Copy
            ['Actielijst'!A65536].End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues And c.Rows.EntireRow.Delete
        End If
    Next
    With Application
        .CutCopyMode = False
        .ScreenUpdating = True
    End With
End Sub

Maak een knopje in tabblad Actielijst met de volgende code

Code:
Sub Naarafgerond()
    Application.ScreenUpdating = False
   Dim c As Range
   For Each c In [G5:G1000]
        If c = "Open" Then
            c.Rows.EntireRow.Copy
            ['Afgerond'!A65536].End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues And c.Rows.EntireRow.Delete
        End If
    Next
    With Application
        .CutCopyMode = False
        .ScreenUpdating = True
    End With
End Sub

Weet niet of ze werkt, ik zal het wel vernemen.

Groetjes Danny. :thumb:
 
@ Danny ;) ik denk dat je hier mis zit
Code:
['Actielijst'!A65536].End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues[COLOR="Red"] And [/COLOR]c.Rows.EntireRow.Delete
en waar gaat jouw eerste lege regel gevonden worden ? soms moet je ook al eens iets toevoegen in de opmaak sheet .
 
Beste trucker10 ;)

@ Danny ;) ik denk dat je hier mis zit
Code:
['Actielijst'!A65536].End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues[COLOR="Red"] And [/COLOR]c.Rows.EntireRow.Delete
en waar gaat jouw eerste lege regel gevonden worden ? soms moet je ook al eens iets toevoegen in de opmaak sheet .

Heb een poging geprobeerd.

Weet niet of ze werkt, ik zal het wel vernemen.

Groetjes Danny. :thumb:

Ik heb het vernomen :D
Zo leren we tenminste iets bij hé.

Groetjes Danny. :thumb:
 
Laatst bewerkt:
Bij deze in orde
 

Bijlagen

  • Kopie van actielijst29-7-2009(1)(1).xls
    63 KB · Weergaven: 67
Laatst bewerkt:
Beste trucker10 ;)



Heb het eens uitgeprobeerd.
Hij schrijft de gegevens wel weg in mijn geval was dit 4 items MAAR hij verwijderde er maar 2 :confused:

Groetjes Danny. :thumb:

Danny , je hebt gelijk :thumb: ik had er telkens maar met 2 getest , dan zie ik het ff niet zitten

Danny test deze nog eens :)
 

Bijlagen

  • Kopie van actielijst29-7-2009(1)(1).xls
    76 KB · Weergaven: 38
Laatst bewerkt:
Nu uitvoerig zelf getest en volgens mij werkt het :)
 

Bijlagen

  • Kopie van actielijst29-7-2009(1)(1).xls
    68,5 KB · Weergaven: 102
Beste Trucker ;)

Nu is het in orde :thumb:

Ge rijd zeker met automatische piloot :D :p

Groetjes danny. :thumb:
 
Beste Trucker ;)

Nu is het in orde :thumb:

Ge rijd zeker met automatische piloot :D :p

Groetjes danny. :thumb:

Ik heb cc en een scrollbal muis :p ik doe dit telkens ik stop bij een klant of zoals nu in koffie pauze , ik zie dat de TS ook al gepiept heeft ;) laat maar iets weten :thumb:
 
@trucker10 en Danny147; Dank voor jullie hulp! Het werkt zoals ik zou willen :thumb:! 'k ga nu zelf nog wat dingen toevoegen!

groetjes,
rhoogland
 
Vervolg

Allen,

Is het mogelijk om de rij te verplaatsen naar het tabblad | Thema | *** adhv de waarde die op de tab Actielijst in kolom A staat?

bijv Thema = Test 1 en afgerond --> knippen uit tabblad Actielijst en plakken op Tabblad |Thema| Test1

Mocht de vraag niet duidelijk zijn dan hoor ik dat wel.

Gr,
rhoogland
 

Bijlagen

  • actielijst.xls
    70 KB · Weergaven: 41
Code:
Sub Afgerond()
    Dim c As Range, rw As Long
    Application.ScreenUpdating = False
    For Each c In [G5:G100]
        If c = "Afgerond" And c.Offset(0, -6) = "Test1" Then
            c.Rows.EntireRow.Copy
            ['|Thema| Test1'!A65536].End(xlUp).Offset(1, 0).Insert Shift:=xlDown
        End If
    Next
    For rw = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
        If Cells(rw, "G") = "Afgerond" Then Rows(rw).Delete
    Next
    With Application
        .CutCopyMode = False
        .ScreenUpdating = True
    End With
End Sub
 

Nog een kleine tip valideer je keuze gegevens , dit kan je door op Ctrl F3 te drukken en daar het nodige te doen . Ik heb dit inje bestandje gedaan Kijk Ctrl F3 en dan ook eens in de cel gaan staan en gegevensvalidatie aan klikken zoals je normaal ook zou doen , kijk wat ik bij +bron heb ingevuld , de naam van de validatie . Bekijk ook je neiuwe tabbladen hoe anders de data overkomt
 

Bijlagen

  • actielijst(1).zip
    21,6 KB · Weergaven: 66
Onder het motto beter goed gepikt dan slecht bedacht heb ik het actiepuntenlijst bestand aangepast aan mijn eigen behoeften. Ik zou echter graag een aanpassing in de VB doen, maar kom hier niet uit.

mijn aangepaste sub:

Code:
Sub Afgerond()
    Application.ScreenUpdating = False
   Dim c As Range
   Dim d As Range
   
   For Each c In [K5:K1000]
   For Each d In [J5:J1000]
        If c = "Afgerond" And d = "Adriaan" Then
            c.Rows.EntireRow.Copy
            
           ['Adriaan'!A65536].End(xlUp).Offset(1, 0).Insert Shift:=xlDown
            
        End If

5x herhaald met verschillende namen en bladen, daarna:

    Next
   
    With Application
    
        .CutCopyMode = False
        .ScreenUpdating = True
    End With
    For Each c In [K1:K1000]
    If c = "Afgerond" Then
    c.Rows.EntireRow.Delete '(xlUp)
    End If
    Next
End Sub
echter als hij het uitvoerd krijg ik de volgende melding: Besturingsvariabele For is al in gebruik (geeft fout aan in het slot deel bij de "For each" direct na "End With"

mijn vraag is dan ook, hoe laat ik het script naar 2 variabelen kijken?

Alvast bedankt voor de moeite van het lezen en meedenken ;-)
 
Voor de helderheid mijn toevoegingen aan het script:

Code:
[B]Dim d As Range[/B]
[B]For Each d In[/B] [J5:J1000]
If c = "Afgerond" [B]And d = "Adriaan"[/B]

zonder deze toevoeging werkt het script prima, echter dan komen alle dossiers met de status `Afgerond` op 1 blad terecht, terwijl ik ze graag uitgesplitst zou zien naar behandelaar
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan