Bonjour à tous !
Je suis totalement débutante en VBA et je suis en train de mettre en place une base de données pour la gestion de prés dans un élevage.
L'idée est de pouvoir sélectionner à l'aide d'un formulaire (déjà créé actuellement) une date de début d'entrée et une date de début de sortie du cheptel dans un pré.
Mais ensuite, j'aimerais récupérer dans une table le pré et le cheptel jour par jour.
Pour illustrer :
Id_Passage date_initiale date_finale commentaire 1 5/07/2019 7/07/2019 Grand pré
Doit devenir :
Id_Passage date commentaire 1 5/07/2019 Grand pré 1 6/07/2019 Grand pré 1 7/07/2019 Grand pré
J'ai récupéré un code VBA à ajouter sur le formulaire et je l'ai adapté à mes champs. Cela fait 3 jours que je suis dessus et après avoir corriger les erreurs de syntaxe qui apparaissaient au fur et à mesure, j'ai actuellement le code suivant, associé au formulaire :
Je n'ai pas ajouté encore les champs Cheptel et Pâturage, je compte faire ça petit à petit.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub Commande15_Click() DtDeb = Me.[Date début] DtFin = Me.[Date fin] For Boucle = 0 To DateDiff("d", DtDeb, DtFin) MaDate = DateAdd("d", Boucle, DtDeb) DoCmd.SetWarnings False DoCmd.RunSQL ("INSERT INTO Passages_Calendrier ([Année], [Date_pâturage]) SELECT " & [Année] & " AS [Année]," & Format(MaDate, "dd/mm/yyyy") & " AS [Date_pâturage];") DoCmd.SetWarnings True Next Me.Requery End Sub
Mon problème est au niveau des dates : je n'ai pas du tout les dates que j'entre dans le formulaire dans les champs [Date début] et [Date fin] mais tout le temps la date "30/12/1899".
J'ai compris que cette date est la date initiale pour compter les dates mais je ne comprends pas pourquoi c'est elle qui s'affiche, comme s'il n'y avait aucune infos.
J'ai changé le format de la date "dd/mm/yyyy" en "yyyy/mm/dd" pour voir : j'obtiens une suite de dates de février 1900. Bref, je ne comprends pas comment corriger ça et après toutes les difficultés que j'ai eues, je me tourne vers vous pour un petit coup de main.
Il y aussi de nombreux sigles et infos que je ne comprends pas/connais pas, si jamais vous trouvez ce qu'il ne va pas dans ce que j'ai fait, pouvez-vous me l'expliquer de façon claire ?
Merci par avance et belle journée à tous !
Partager