• 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 plakt formule ipv waarde

Status
Niet open voor verdere reacties.

genexxa

Gebruiker
Lid geworden
26 aug 2008
Berichten
70
Als eerste ben ik niet echt thuis in VBA en heb van internet een code gehaald en deze aangepast.
Tot zo ver ging alles goed.
Echter loop ik er nu tegen aan dat de formule gekopieerd wordt ipv de waarde die de formule aan geeft.

Code:
Sub Gegevens_kopieren()
Dim cl As Range
'Sheet Dagstart
With Sheets("Weekoverzicht")
'Kijkt naar de namen van de tabbladen per persoon in regel (O8 t/m AL8)
  For Each cl In .Range("D14:D14")
  'Als, vanaf regel +1 (regel 15), 6 regels de waarde >0 is, dan
    If Application.Count(cl.Offset(1).Resize(9)) > 0 Then
    'Kopieer alle cellen met waarde, plak de waarde onder cel 3 ,vergelijkt de datum(E1)in de sheets. kijkt naar de naam in regel 9 (O9 t/m AL9) in de 2e regel
     cl.Offset(1).Resize(9).Copy Sheets(cl.Value).Cells(3, Application.Match(CLng(.Range("c14")), Sheets(cl.Value).Rows(2), 0)).Offset(1)
    End If
  Next cl
End With
End Sub

Kan iemand mij helpen hoe ik de waarde kopieer ipv de formule?
 
Code:
copy
pastespecial xlpastevalues
 
Code:
Sub Gegevens_kopieren()
Dim cl As Range
'Sheet Dagstart
With Sheets("Weekoverzicht")
'Kijkt naar de namen van de tabbladen per persoon in regel (O8 t/m AL8)
  For Each cl In .Range("D14:D14")
  'Als, vanaf regel +1 (regel 15), 6 regels de waarde >0 is, dan
    If Application.Count(cl.Offset(1).Resize(9)) > 0 Then
    'Kopieer alle cellen met waarde, plak de waarde onder cel 3 ,vergelijkt de datum(E1)in de sheets. kijkt naar de naam in regel 9 (O9 t/m AL9) in de 2e regel
     cl.Offset(1).Resize(9).Copy 
     Sheets(cl.Value).pastespecial xlpastevalues.Cells(3, Application.Match(CLng(.Range("c14")), Sheets(cl.Value).Rows(2), 0)).Offset(1)
    End If
  Next cl
End With
End Sub

Ik heb dit geprobeerd maar dat werkt niet.
Ik weet ook niet zo goed waar ik deze moet toevoegen omdat mijn kennis op dit gebied te weinig is.
help??
 
Bijna, er is nog een kans.
 
Laatst bewerkt:
Nice het is gelukt.

Het was even zoeken maar met dank aan de hulp van HSV die mij de juiste kant op stuurde is het gelukt.
Code:
Sub Gegevens_kopieren()
Dim cl As Range
'Sheet Dagstart
With Sheets("Weekoverzicht")
'Kijkt naar Aantal in cel D14
  For Each cl In .Range("D14:D14")
  'Als, vanaf regel +1 (regel 15), 10 regels de waarde >0 is, dan
    If Application.Count(cl.Offset(1).Resize(10)) > 0 Then
    'Kopieer alle cellen met waarde, plak de waarde onder cel 3 ,vergelijkt de datum(C14)in de sheets. datum in regel 2
     cl.Offset(1).Resize(10).Copy
    Sheets(cl.Value).Cells(3, Application.Match(CLng(.Range("c14")), Sheets(cl.Value).Rows(2), 0)).Offset(1).PasteSpecial xlPasteValues
    End If
  Next cl
End With
End Sub

Thnx!!!
 
Er is nog een methode.
Code:
Sheets(cl.Value).Cells(3, Application.Match(CLng(.Range("c14")), Sheets(cl.Value).Rows(2), 0)).Offset(1).resize(10) = cl.Offset(1).Resize(10).value
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan