Vba-date-modifier le mois [Résolu]

Signaler
Messages postés
14
Date d'inscription
lundi 26 mai 2008
Statut
Membre
Dernière intervention
17 juillet 2008
-
Messages postés
14
Date d'inscription
lundi 26 mai 2008
Statut
Membre
Dernière intervention
17 juillet 2008
-
Bonjour à tous,
Merci de lire ce post :)

En fait, je récupère une date de ma table via une requête : variable dateuh
De même, je récupère un numéro entre 0 et 10 de cette même table : variable numero

Je dois remplacer le mois de dateuh par numero. (par du vba)

Je sais comment rajouter des jours, des mois, des années (DateAdd) mais pas comment REMPLACER le mois sans faire de calcul.
Aucun calcul ne doit être fait, c'est juste du remplaçage :s


<hr />

Code:
dim dateuh as date
dim datefinale as date
dim numero as integer
dim intervaltype as string
'dateuh et numero sont remplis par mes requetes sql

intervaltype = "m"
datefinale = DateAdd(intervaltype, numero, dateuh)
<hr />

Ce code, fonctionnel, rajoute numero à dateuh mais ne le REMPLACE pas :'(

En ésperant avoir été clair et avoir posté au bon endroit !
Si vous avez une idée, dîtes là ^^
Mici d'avance :)

5 réponses

Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Ou encore utiliser la fonction "Format$"...
voir à ce sujet le snippets : http://www.codyx.org/snippet_afficher-date-jour_92.aspx#827

Amicalement,
Us.
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
24
Bonjour,

ou encore :

Private Sub Command4_Click()
  ladate = "21/02/2009"
  MsgBox DateSerial(Year(ladate), 10, Day(ladate))
End Sub
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

Sous quelle forme Dateuh est renvoyée ?

Est-ce écrit de la sorte : "3 Juin 2008" ?
Si oui, on peut penser à utiliser la fonction Split, d'identifier le mois pour le remplacer (Select case) puis concaténer le tout...

Amicalement,
Us
Messages postés
14
Date d'inscription
lundi 26 mai 2008
Statut
Membre
Dernière intervention
17 juillet 2008

Je vous remercie pour ces réponses. Je vais les étudier et je vous tiens au courant!


Sinon,  us_30, la date est renvoyée de cette manière : jj/mm/aaaa
Messages postés
14
Date d'inscription
lundi 26 mai 2008
Statut
Membre
Dernière intervention
17 juillet 2008

Super cela fonctionne!

numero étant une variable de type integer.
dateuh étant une variable de type date.
dim datefinale as date

datefinale = DateSerial(Year(dateuh), numero, Day(dateuh))

J'vous remercie, j'avais pas trouvé "DateSerial"