Zone de texte dans un formulaire
Résolu
TeddyGalere
Messages postés
75
Date d'inscription
Statut
Membre
Dernière intervention
-
TeddyGalere Messages postés 75 Date d'inscription Statut Membre Dernière intervention -
TeddyGalere Messages postés 75 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je dois réaliser un formulaire, dans je dois saisir des informations et notamment une date de début de mission.
Ensuite les informations sont intégré automatiquement dans un tableau qui me calcul une multitude de d'échéances liés à cette date.
Je souhaiterai cependant que dans mon formulaire apparaisse une date de fin de mission previsionnelle (à +105j).
Donc avoir une barre avec écrit date de fin: jj/mm/aaaa.
Mais je souhaiterai pouvoir modifier cette date de fin pour la contraindre...
Je m'explique... Imaginons la date de fin que le formulaire m'indique est le 15/06/2016, mais que j'ai besoin que ma mission soit fini pour le 01/06/2016, je veux pouvoir l'indiquer pour que tous mes échéances calculés prennent en compte cette date...
Le formulaire est deja fait, mais je ne sais juste pas comment y intégrer cette case qui m'affiche un résultat (que je puisse modifier) en fonction d'une case de saisie du même formulaire.
Je ne sais pas si je me fais bien comprendre :)
En vous remerciant.
Je dois réaliser un formulaire, dans je dois saisir des informations et notamment une date de début de mission.
Ensuite les informations sont intégré automatiquement dans un tableau qui me calcul une multitude de d'échéances liés à cette date.
Je souhaiterai cependant que dans mon formulaire apparaisse une date de fin de mission previsionnelle (à +105j).
Donc avoir une barre avec écrit date de fin: jj/mm/aaaa.
Mais je souhaiterai pouvoir modifier cette date de fin pour la contraindre...
Je m'explique... Imaginons la date de fin que le formulaire m'indique est le 15/06/2016, mais que j'ai besoin que ma mission soit fini pour le 01/06/2016, je veux pouvoir l'indiquer pour que tous mes échéances calculés prennent en compte cette date...
Le formulaire est deja fait, mais je ne sais juste pas comment y intégrer cette case qui m'affiche un résultat (que je puisse modifier) en fonction d'une case de saisie du même formulaire.
Je ne sais pas si je me fais bien comprendre :)
En vous remerciant.
A voir également:
- Zone de texte dans un formulaire
- Whatsapp formulaire opposition - Guide
- Alternative zone telechargement - Accueil - Outils
- Texte de chanson gratuit pdf - Télécharger - Vie quotidienne
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
6 réponses
C'est dans tes zones de texte (textbox) avec les dates dont tu parles? Si c'est ça, ajoute
Private Sub TextBox_Date_AfterUpdate()dans ton code pour l'usf. Dans la textbox où tu entres la date de début doit être obligatoirement au format JJ/MM/AAAA et la date de fin se met automatiquement après un appuie sur [Entrée]
With Me
fin = CDate(.TextBox_Date) + Day(15)
Debug.Print (fin)
.TextBox1 = fin
End With
End Sub
Merci Tyranausor...
Ton code semble marcher, mais par contre ca ne m'ajouter que 14j au lieu de 105...
J'ai tenté d'écrire:
Private Sub TextBox_Date_AfterUpdate()
With Me
fin = CDate(.TextBox_Date) + Day(105)
Debug.Print (fin)
.TextBox1 = fin
End With
End Sub
Au lieu de:
Private Sub TextBox_Date_AfterUpdate()
With Me
fin = CDate(.TextBox_Date) + Day(15)
Debug.Print (fin)
.TextBox1 = fin
End With
End Sub
Mais rien n'y fait...
Ton code semble marcher, mais par contre ca ne m'ajouter que 14j au lieu de 105...
J'ai tenté d'écrire:
Private Sub TextBox_Date_AfterUpdate()
With Me
fin = CDate(.TextBox_Date) + Day(105)
Debug.Print (fin)
.TextBox1 = fin
End With
End Sub
Au lieu de:
Private Sub TextBox_Date_AfterUpdate()
With Me
fin = CDate(.TextBox_Date) + Day(15)
Debug.Print (fin)
.TextBox1 = fin
End With
End Sub
Mais rien n'y fait...
Bonjour, j'ai mal lu, mille excuses. En effet, même sous Excel (sans vba) tu ajoutes 105 à une date ça ajoute 15 jours!
La solution serait de convertir 105 jours en mois et jours, soit 3 mois (de 30 jours) et 15 jours
La solution serait de convertir 105 jours en mois et jours, soit 3 mois (de 30 jours) et 15 jours
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai un code qui fonctionne mais qui ne donne pas tout as fait la même chose que si tu faisais le calcul sans VBA.
Sous Excel
Sous Excel
01/03/2016+105=14/06/2016et avec VBA avec le code Sub
ajout_jours_date()j'ai 16/06/2016 soit une différence de 2 jours. Vu que c'est du prévisionnel, ça ne fait pas grand chose
Cells(10, 8) = "Date de départ"
Cells(11, 8) = "Jours à ajouter"
Cells(12, 8) = "Résultat"
d = "01/03/2016"
j = DateAdd("m", 3, d)
Cells(12, 9) = j + 14
End Sub
Par contre dernier truc si je peux me permettre...
Il faudrait que dans ma sheet "Masque de saisie", la cellule C22 soit égal à la TextBox1
(bon ca c'est easy)
Mais il faudrait que ma cellule C18 soit égal à:
TextBox1-105*((Textbox1-TextBox_Date)/105)
Sauf que quand je tape dans ma macro:
Sheets("Masque de saisie").Cells(18, 3) = TextBox1 - 105 * ((TextBox1 - TextBox_Date) / 105)
Ca me met en mode débogage... :'(
Il faudrait que dans ma sheet "Masque de saisie", la cellule C22 soit égal à la TextBox1
(bon ca c'est easy)
Mais il faudrait que ma cellule C18 soit égal à:
TextBox1-105*((Textbox1-TextBox_Date)/105)
Sauf que quand je tape dans ma macro:
Sheets("Masque de saisie").Cells(18, 3) = TextBox1 - 105 * ((TextBox1 - TextBox_Date) / 105)
Ca me met en mode débogage... :'(
Bonjour, c'est normal. Tu fais des opérations sur une date (VBA ne fonctionne pas tout à fait comme Excel). Je vois que tu veux faire une différence entre deux dates, c'est avec datediff(). Mais je ne comprend pas ce que tu veux obtenir par TextBox1 - 105 * ((TextBox1 - TextBox_Date) / 105) .
As-tu un exemple chiffré?
As-tu un exemple chiffré?
Voila le lien: https://www.cjoint.com/c/FCxnSHSMy8C
Encore merci