[excel/vba] aide sur calcul de date

Résolu
antic80 Messages postés 4877 Statut Contributeur -  
antic80 Messages postés 4877 Statut Contributeur -
Bonjour,

voila j'ai un morceau de code comme suit

activecell=datedebut.txt
ActiveCell.NumberFormat = "dd/mm/yyyy"

j'aimerais que dans la cellule juste a coté donc activecell.offset (0,1) je puisse obtenir la date 7 jours plus tard

16 réponses

Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
Salut,

En supposant que ta date initiale set en B4, teste cette formule.
Si la cellule B4 est formaté en Date tu n'as pas besoin de cette ligne
ActiveCell.NumberFormat = "dd/mm/yyyy"



Sub Macro1()
Range("B4").Select
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = "=RC[-1]+7"
End Sub

A+
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
ok je vais tester

merci
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
peut etre pourrais tu m'aider pour autre chose

sur une userform j'ai un zone ou je dois saisir une date.

la date s'insere ensuite dans une cellule excel. j'aimerais qu'a l'insertion la cellule prenne le format date de la manière suivante

dd/mm/yyyy

si je tape 15/12/2008 tout va bien

si je tape 01/12/2008 dans ma cellule excel j'obtient 12/01/2008

pourquoi ?
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
Regardes dans format/cellule sélectionnes date et contrôle tes paramètres régionaux que ce soit bien France de sélectionné

sinon ajoute une ligne à ton code VBA

Selection.NumberFormat = "mm/dd/yyyy"

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
antic80 Messages postés 4877 Statut Contributeur 1 161
 
les parametres sont bien sur francais

j'ai mis le format de cellule mais suivant les dates j'obtient des résultats différents

si je met 30/11/2008 ou 15/11/2008 pas de soucis

si je met 10/11/2008 j'obtient en affichage dans ma cellule 11/10/2008 mais ds la barre de formule excel j'ai bien 10/11/2008
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
SI TU FAIS FORMAT/CELLULE/NOMBRE ET DATE es que ça change

ou personnalisé et sélectionnes ou saisis mm/jj/aaaa

Sinon mets une copie de ce fichier que l'on voit

avec ce lien

https://www.cjoint.com/

A+
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
J'ai l'impression que mon post s'est perdu

Alors actives ta cellule et vas sur format/cellule/nombre/date et attribu un format

pas de modif, alors toujours dans format etc ... /personnalisé et sélectionnes ou saisis jj/mm/aaaa

si pas de solution joint une copie que l'on voit ça avec ce lien

https://www.cjoint.com/
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
ce qui est bizarre c'est que dans mon code vba j'ai bien spécifié le format de date et qu'a la base mes cellules excel n'ont pas de format.

ce que je ne comprend c'est que certaines dates marchent et pas d'autres
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
PARCE QUE CERTAINES CELLULES SONT EN FORMAT TEXTE CERTAINEMENT

ENVOI UNE COPIE, NOUS GAGNERONS DU TEMPS PARCE QUE JE DOIS M'ABSENTER UN MOMENT

A+
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
malheureusement je ne peux pas envoyé ce fichier pour préserver les données


par contre je me suis rendu compte d'une chose : si le jour est compris entre 1 et 12 la fonction ne marche pas

par exemple

12/10/2008 j'obtient 10/12/2008
13/10/2008 j'obtient 13/10/2008
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
c bon j'ai trouver

en fait le probleme venez de ma textbox

je prenais comme valeur textbox.txt

la j'ai mis

activecell=textbox
activecell.numberformat="dd/mm/yyyy"
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
IL y avait une bricole, mais difficile à contrôler sans voir le fichier. le principal est que tout marche.

Si ton problème est résolu, n'oublis pas de mettre ton statut en résolu ou fais me le savoir que je le mette

A+
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
je reviens sur mon probleme

grace a un bouton je recopie certaines lignes de mon tableau ds une autre feuille

en faisant la copie j'ai a nouveau ce souci de date

je comprend pas pourquoi
0
Mike-31 Messages postés 19571 Date d'inscription   Statut Contributeur Dernière intervention   5 138
 
Salut,

Comme cela difficile à dire.

enregistres ton fichier sous pour le dupliquer, réduit le nombre de ligne et colonne ainsi que les onglet, supprimes ou remplaces les données confidentielles et mets le sur le forum avec le lien du post 7.

A+
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 279
 
Bonsoir,

les dates en vba excel sont souvent mal gérées, comprises comme date au format anglais.
Essaie en utilisant la fonction format()
eric
0
antic80 Messages postés 4877 Statut Contributeur 1 161
 
après plusieurs recherche j'ai fini par utiliser la fonction Cdate.

le probleme est résolu
0