Date dans macro

Résolu
nancy_soleil08 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   -  
nancy_soleil08 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai cette formule dans une macro:

.Range("y" & li - 1).AutoFill Destination:=Range("y" & li - 1 & ":y" & li), Type:=xlFillDefault
f = "=IF($V" & li & ">0,$V" & li & ",$Y" & li - 1 & ")"

Cela est supposé recopier la valeur de la cellule au dessus. La formule fonctionne mais au lieu de recopier la bonne date, elle me donne la date + 1 jour. Exemple, si dans la cellule Y2 j'ai le 28 juin, la réponse de la macro dans la cellule Y3 sera le 29 juin. Qu'est-ce que j'ai écrit de pas correct pour que cela fasse ça?


A voir également:

3 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Changes le type de la copie
Type:=xlFillCopy

Mais pour une copie dans une seule cellule tu peux faire plus simple
.Range("y" & li - 1).Copy .Range("y" & li)

Cdlmnt
0
nancy_soleil08 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
Merci!!!!
0
nancy_soleil08
 
Bonjour, cela fait longtemps!!! J'ai la même formule à utiliser, je veux copier les données de la ligne au dessus. Par contre cette ligne au dessus contient une formule et ce n'est pas la formule que je veux copier c'est le résultat de la formule. Je devine que je dois insérer le terme value quelque part, mais je ne sais pas ou et ma formule fonctionne, mais elle copie la formule de la ligne précédente, pas la valeur.

.Range("ab" & li - 1).AutoFill Destination:=Range("ab" & li - 1 & ":ab" & li), Type:=xlFillCopy

La formule qui est dans la cellule à copier est ex: =A6, le résultat de cela est ex: 5412B07
Mais au lieu d'avoir 5412B07 comme réponse, j'ai =A7

Merci
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

C'est vrai que ça fait un bout de temps

Pour copier la valeur
.Range("ab" & li - 1).Copy
.Range("ab" & li).PasteSpecial Paste:=xlPasteValues
et si tu veux copier aussi le format tu ajoutes
.Range("ab" & li).PasteSpecial Paste:=xlPasteFormats

Cdlmnt
0
nancy_soleil08 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention  
 
C'était facile!!! ;-) Merci beaucoup!
0