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

celinhoud behouden

Status
Niet open voor verdere reacties.

edvanan

Gebruiker
Lid geworden
16 feb 2005
Berichten
33
Hoy exelmannen,
Gisteren had ik een probleem met een dagplanning welke jullie een mooie oplossing voor hadden waarvoor dank.
Ik heb n.l. nog een probleempje daarmee.
Wanneer ik van voor de datum van vandaag kolommen verwijder dan zou in kolom B de waarde moeten behouden blijven.
Vb.nu staan bij project A in kolom B 24 gepresteerde uren.Wanneer ik nu kolom D tot en met kolom H verwijder moet er in kolom B de 24 uren blijven behouden .Dit wordt als ik deze verwijder 0 uur.

Alvaste bedankt voor de hulp

Gr.
Eddy
 

Bijlagen

Waarom verberg je die cellen niet gewoon?
Ik heb bovendien de gegevens getransponeerd zodat ze onder elkaar staan.
Zo kan je meerdere dagen kwijt dan op de oude manier. Dit lijkt mij ook beter leesbaar.

Met vriendelijke groet,


Roncancio
 

Bijlagen

Hoy,

Ik kan deze kalenderdagen niet onder elkaar zetten omdat ik met een planning op mijn werk zit die er uitziet zoals deze.Sorry
Misschien lukt het met een macrotje!!!

Eddy
 
Hoy,

Ik kan deze kalenderdagen niet onder elkaar zetten omdat ik met een planning op mijn werk zit die er uitziet zoals deze.Sorry
Misschien lukt het met een macrotje!!!

Eddy

Ik kan een macro voor je maken maar als je de kolommen verbergt ben je al bijna klaar, toch?

Met vriendelijke groet,


Roncancio
 
Hoy,
Ik kan de kolommen niet verbergen omdat wanneer ik 1,5 jaar verder ben mijn kolommen op zijn.Wanneer ik ze verwijder blijf ik met hetzelfde aantal kolommen .
Toch alvaste bedankt voor de reactie

Gr.
Eddy
 
Hoy,
Ik kan de kolommen niet verbergen omdat wanneer ik 1,5 jaar verder ben mijn kolommen op zijn.Wanneer ik ze verwijder blijf ik met hetzelfde aantal kolommen .
Toch alvaste bedankt voor de reactie

Gr.
Eddy

Oké, een macro dan.;)
Onderstaande code zoekt de datum een week na vandaag en zet de gegevens in de C-kolom.
Vervolgens worden de bronkolommen (D t/m week van vandaag) verwijderd.

Code:
Sub verwijderen()
Dim lRij As Long
    lRij = 4
    With Worksheets("Blad1").Range("2:2")
        Set D = .Find(Date + 7, LookIn:=xlValues, lookat:=xlWhole)
        While Range("A" & lRij).Value <> ""
            Range("C" & lRij).Value = WorksheetFunction.Sum(Range("D" & lRij & ":" & Chr(64 + D.Column) & lRij))
            lRij = lRij + 1
        Wend
        ActiveSheet.Columns("D:" & Chr(64 + D.Column)).Delete
    End With
End Sub

Met vriendelijke groet,


Roncancio
 
Dit maak ik ervan.

Code:
Sub verwijderkolommen()

    Dim i As Integer
    Dim l As Long
    Dim iLaatsteKolom As Integer
    Dim arr As Variant

    iLaatsteKolom = Cells(2, Columns.Count).End(xlToLeft).Column

    i = 3

    Do Until Cells(2, i + 1).Value > Date
        i = i + 1
    Loop

    'zet formule
    If i > 3 Then
    
        For l = 4 To 8
        
            arr = Split(Range("B" & l).Formula, "+")
            
            If UBound(arr, 1) = 0 Then
            
                Range("B" & l).Formula = "=SUMIF(R2C" & i + 1 & ":R2C" & iLaatsteKolom & ",""<=""&TODAY(),RC" & i + 1 & ":RC" & iLaatsteKolom & ")+" & _
                                     Application.WorksheetFunction.Sum(Range(Cells(l, 4), Cells(l, i)))
            
            Else
            
                Range("B" & l).Formula = "=SUMIF(R2C" & i + 1 & ":R2C" & iLaatsteKolom & ",""<=""&TODAY(),RC" & i + 1 & ":RC" & iLaatsteKolom & ")+" & _
                                     arr(1) + Application.WorksheetFunction.Sum(Range(Cells(l, 4), Cells(l, i)))
                                     
            End If
        
        Next l
    
        'verwijder kolommen
        Range(Cells(1, 4), Cells(l, i)).EntireColumn.Delete
        
    End If

End Sub

Wigi
 
Hoy Wigi en andere,
Bedankt voor de nuttige informatie.
Er zit een klein probleempje in je macro.n.l. de bedoeling is eigenlijk dat ik zelf een kolom of meerdere kolommen handmatig verwijder en er dan in kolom B de aantal gepresteerde uren moet blijven staan

Gr.

Eddy
 
Als jij kolommen verwijdert, hoe gaat Excel dan weten wat de gegevens waren die in die kolommen stonden? Vandaar mijn benadering en code.
 
Hoy,
Het is dus niet mogelijk wanneer de dag van vandaag voorbij is dat in kolom B de inhoud van de desbetreffende cel bewaard wordt of die waarde behouden blijft ook als men de kolommen van de dagen ervoor handmatig verwijdert??
Het zou iets moeten zijn in de zin van wanneer de dag om is de uren die gepland staan bij opgeteld worden in kolom B en deze dan vasthoudt ook wanneer men de kolommen verwijdert van de dagen ervoor??

Gr.

Eddy
 
Hoy,
Het is dus niet mogelijk wanneer de dag van vandaag voorbij is dat in kolom B de inhoud van de desbetreffende cel bewaard wordt of die waarde behouden blijft ook als men de kolommen van de dagen ervoor handmatig verwijdert??
Het zou iets moeten zijn in de zin van wanneer de dag om is de uren die gepland staan bij opgeteld worden in kolom B en deze dan vasthoudt ook wanneer men de kolommen verwijdert van de dagen ervoor??

Gr.

Eddy

Als je mijn code deftig bekijkt, zie je dat er kolommen behandeld worden tot en met de dag van vandaag. Die worden weggeschreven en daarna verwijderd.

Pas dat dan aan zodat de dag van vandaag daar niet mee in zit.

Wigi
 
Hoy,
Sorry ik ben niet zo ver in vba .Ik weet in dit geval niet waar ik moet aanpassen opdat alleen de kolommen verwijdert worden 4 dagen voor de datum van vandaag .
Jullie zijn daar zoals ik zie toch wel vergevorderde mensen in.
Toch alvaste bedankt voor jullie response.

Gr.
Eddy
 
Ga met functietoets F8 stap voor stap door de code en zie wat er gebeurt. Ook wat de inhoud van de variabelen is (i nota bene). Dit zie je door ze met de muis aan te wijzen.

Wigi
 
Hoy,
Nog eens terugkomend op mijn probleem van waarde in kolom B behouden.
Er moet toch iets zijn wanneer ik b.v. kolom D en E handmatig verwijder de waarde die er in kolom B nu staat (16 uren) bouden blijft ?
Wigi heeft mij al goed op weg geholpen maar wanneer ik het macrotje uivoer telt hij er in kolom B nog een aantal uren bij op wat niet de bedoeling is.
Is er nog een andere mogelijkheid om dit te doen slagen??

Gr.

Eddy
 

Bijlagen

Nog eens terugkomend op mijn probleem van waarde in kolom B behouden.
Er moet toch iets zijn wanneer ik b.v. kolom D en E handmatig verwijder de waarde die er in kolom B nu staat (16 uren) bouden blijft ?
Wigi heeft mij al goed op weg geholpen maar wanneer ik het macrotje uivoer telt hij er in kolom B nog een aantal uren bij op wat niet de bedoeling is.

Kolom B bevat een formule, die onder meer verwijst naar kolommen die jij handmatig gaat verwijderen. Je verwijdert die, en dan wil je dat nog steeds het juiste resultaat getoond wordt? En dat er niets bijgeteld wordt? Dan begrijp ik er niets meer van, het spijt me.

Wigi
 
Hoy,
Als er geen oplossing is dan moet ik maar de kolommen verbergen.
Kunnen er ook kolommen bijgemaakt worden verder dan IV ?? IW-IY-IZ-GA enz.

GR.

Eddy
 
Volgens mij zitten we vrij dicht bij een oplossing, maar als je niet wat je wil kan er geen enkele VBA-code goed zijn.

In Excel 2007 heb je veel meer kolommen, 16384 dacht ik. In vorige Excel versies niet.

Wigi
 
In bijlage heb ik een klein stukje van de planning die ik op het werk gebruik bijgedaan.Misschien is dit dan wat duidelijker.Per klant wordt er atelieruren gepland en uren montage vanaf kolom P .In rij 37 staat de datum.Per klant zijn er 2x rijen.
In de bovenste rij komen de geplande uren atelier en eronder de uren voor montage.In kolom N worden de geplande uren opgeteld.In kolom L en N worden de voorziene uren ingevuld van respectievelijk de atelier en montage.
In kolom K krijg je dan de uren die tot de dag van vandaag al gepresteerd zijn.
Omdat wij in deze exelversie beperkt zijn in aantal kolommen ,verwijderen om de 14 dagen tot 3 weken een 12tal kolommen telkens met het gevolg dat bij langlopende projecten ik niet meer weet hoeveel uren er gepresteerd zijn geweest.Daarom wanneer wij kolommen verwijderen zou in kolom K de gepresteerde uren moeten staan blijven.Dit is nu niet en worden de uren die in de kolommen staan die verwijdert worden van de gepresteerde uren terug afgetrokken in kolom K.

Hopelijk ben ik hier nu wat duidelijker
GR.

Eddy
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan