VBA insérer une formule dans une cellule, avec, comme parametre, le résultat fonction

burzcairwen

XLDnaute Nouveau
Bonjour,

Je dois insérer, en vba, dans une cellule une formule, comme ceci :
.Range("V" & LastRow).FormulaLocal = "=DATEDIF(G12;"31.01.2015";""d"")"

Le problème est que le 31.01.2015 provient du résultat d'une fonction

Dim d As Variant
d = lastDate("10.01.2015")

Function lastDate(LaDate As Variant) As Variant
If IsDate(LaDate) Then
lastDate = DateSerial(Year(Date), month(Date) + 1, 1) - 1
Else
lastDate = Null
End If
End Function

Jusque là tout va bien, le fonction me renvoie bien, dans cet exemple, le 31.01.2015

Par contre, quand je passe en paramètre le résultat de ma fonction, soit
.Range("V" & LastRow).FormulaLocal = "=DATEDIF(G12;" & d & ";""d"")
cela provoque une erreur car le paramètre (31.01.2015) n'est pas entre guillemet
(.Range("V" & LastRow).FormulaLocal = "=DATEDIF(G12;31.01.2015;""d""))

Je ne sais pas comment faire pour mettre ce paramètre entre guillemet.
.Range("V" & LastRow).FormulaLocal = "=DATEDIF(G12;"" & d & "";""d"") ne fonctionne pas
et d = "" & lastDate(start_date) & "" ne fonctionne pas non plus.

Pouvez-vous m'aider...
Merci beaucoup
 

Discussions similaires

Statistiques des forums

Discussions
312 273
Messages
2 086 701
Membres
103 373
dernier inscrit
Edouard007