Microsoft 365 Code incomplet

Marvin57

XLDnaute Occasionnel
Bonjour à tout le monde,

j'ai récupéré un fichier qui pourrait m'aider, mais je n'arrive pas à mettre en place les codes .

Il contient des codes que j'ai réussi à modifier, mais je n'arrive pas à adapter les deux codes suivants: " Actualiser_Planning_Reservations" et le code " SupprPlanningReservations ".
Je pense que dans ces deux codes il y a des instructions manquantes !

Pour vous donner une explication du fonctionnement du fichier;

En appelant le UserForm " DEMANDE_RESERVATIONS " (en cliquant sur le bouton " Saisir une réservation") , je veux pouvoir saisir le nom de client, le nombre de jours dans le textbox5 et suite à la saisie de ce nombre de jour dans ce textbox et la saisie de la date d'arrivée choisie, il me renseignera la date de départ.

Une fois que cela fonctionne, il faudrait également pouvoir modifier des lignes si nécessaire en cliquant sur le client voulu dans la listbox1 et une fois les infos modifiées je pourrai cliquer sur le bouton modifier.

Pour l'instant je vous laisse regarder et si besoin vous me dites si quelque chose est mal expliqué s'il vous plaît.

Merci à vous en attendant.

Marvin57
 

Pièces jointes

  • MARVIN57 PLANNING RESERVATIONS.xlsm
    94.7 KB · Affichages: 6
Solution
Bonjour,

@Marvin57 : Code à copier dans un module standard. Ensuite l'appeler à partir de l'évènement Activate de la feuille PLANNING RESERVATIONS. Clic-droit sur l'onglet, visualiser le code et tu colles les lignes ci-dessous
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Actualiser_Planning
End Sub
Dans module standard ci-dessous
Code:
Sub Actualiser_Planning()   'valider
'/!\ Attention! Il faut supprimer la 1ère colonne Nom, la ligne des dates doit débuter en A5
   Dim RngDate As Range, rng As Range, col1 As Integer, col2 As Integer, LigFeuil As Integer
   Dim colfeuil As Integer, i As Integer, x As Byte, couleur As Byte, lig As Long
   Dim plage As Range, DateDebut As Long, derlig1 As Long, derlig2 As Long...

cp4

XLDnaute Barbatruc
Re,

@Marvin57 : Je regardais plus en détail ton projet. Ce n'est pas pour te décourager, tu omis beaucoup de choses que l'on découvrent au fil de l'utilisation du formulaire.
Exemple: tu saisis le nombre de jours, ensuite tu fais apparaitre le calendrier, au choix d'une date la textbox5 (date de départ se met à jour). Jusque là, ça va.
Mais tu as mis un bouton à coté de celle-ci pour faire apparaitre le calendrier. L'utilisateur pourrait comprendre qu'il a la possibilité de changer cette date. En faisant cela, le nombre de jours ne suit plus.
Il faudrait corriger tes codes dans ce sens. Si tu veux que ton projet tienne la route.

Ce n'est pas grave nous avons fait cela autrement.
Tu as sollicité de l'aide pour solutionner ton problème. Des gens suivent ou liront ta discussion, pour aider ou résoudre leur problème probablement similaire au tien.
Je te rappelle que XLD est un forum d'entraide et de partage. Or, là je constate que tu ne remplis pas ta part envers notre communauté.

Ton fichier en retour, avec une listbox comme entête de colonne au lieu des labels que tu avais mis.
 

Pièces jointes

  • MARVIN57 PLANNING RESERVATIONS_cp4_V2.xlsm
    98.6 KB · Affichages: 1

Marvin57

XLDnaute Occasionnel
Re,

@Marvin57 : Je regardais plus en détail ton projet. Ce n'est pas pour te décourager, tu omis beaucoup de choses que l'on découvrent au fil de l'utilisation du formulaire.
Exemple: tu saisis le nombre de jours, ensuite tu fais apparaitre le calendrier, au choix d'une date la textbox5 (date de départ se met à jour). Jusque là, ça va.
Mais tu as mis un bouton à coté de celle-ci pour faire apparaitre le calendrier. L'utilisateur pourrait comprendre qu'il a la possibilité de changer cette date. En faisant cela, le nombre de jours ne suit plus.
Il faudrait corriger tes codes dans ce sens. Si tu veux que ton projet tienne la route.


Tu as sollicité de l'aide pour solutionner ton problème. Des gens suivent ou liront ta discussion, pour aider ou résoudre leur problème probablement similaire au tien.
Je te rappelle que XLD est un forum d'entraide et de partage. Or, là je constate que tu ne remplis pas ta part envers notre communauté.

Ton fichier en retour, avec une listbox comme entête de colonne au lieu des labels que tu avais mis.
Bonjour cp4,

Je comprends très bien que tout le monde n'est pas toujours disponible sur un site bénévole, qui d'ailleurs m'a beaucoup aidé.



Pour ma demande je m'explique encore une fois:

Mon fichier, c'est vrai, était un peu mal composé. Il ya des codes qui fonctionnent bien et ma demande concernait uniquement les deux codes suivants :
" Actualiser_Planning_Reservations" et le code " SupprPlanningReservations ".

L'apparence du Userform et des boutons de dates pour appeler le calendrier ne change rien à ma demande. Qu'ils soient visibles ou pas n'a rien à voir avec ma demande.

Les codes ci-dessus devraient me placer le nom du client (Textbox6) et les notes (Textbox4) dans le tableau de l'onglet PLANNING RESERVATIONS.
C'est à dire si un client par exemple nommé Henri fait une réservation du 15/02/2024 au 16/02/2024 avec une note comme par exemple Réunion, il devrait m'inscrire " Henri Réunion " dans les dates 10, 11, 12, 13, 14, 15 et 16 février.

Merci à vous cp4 pour votre compréhension.

Voila, c'est out ce que je demandais dans mon premier post.
 

Marvin57

XLDnaute Occasionnel
Re,

@Marvin57 : Je regardais plus en détail ton projet. Ce n'est pas pour te décourager, tu omis beaucoup de choses que l'on découvrent au fil de l'utilisation du formulaire.
Exemple: tu saisis le nombre de jours, ensuite tu fais apparaitre le calendrier, au choix d'une date la textbox5 (date de départ se met à jour). Jusque là, ça va.
Mais tu as mis un bouton à coté de celle-ci pour faire apparaitre le calendrier. L'utilisateur pourrait comprendre qu'il a la possibilité de changer cette date. En faisant cela, le nombre de jours ne suit plus.
Il faudrait corriger tes codes dans ce sens. Si tu veux que ton projet tienne la route.


Tu as sollicité de l'aide pour solutionner ton problème. Des gens suivent ou liront ta discussion, pour aider ou résoudre leur problème probablement similaire au tien.
Je te rappelle que XLD est un forum d'entraide et de partage. Or, là je constate que tu ne remplis pas ta part envers notre communauté.

Ton fichier en retour, avec une listbox comme entête de colonne au lieu des labels que tu avais mis.
je vous joins deux capture écran qui montrent à quoi devrait ressembler ma demande. Peut-être cela vous aidera.

L'une vous montre l'inscription du client HIPI avec sa note ESSAI dans le Tableau LISTING RESERVATIONS et l'autre vous montre comment cela devrait être dans le tableau du PLANNING RESERVATIONS.
PLANNING LISTING.png
PLANNING RESERVATIONS.png
 

cp4

XLDnaute Barbatruc
C'est à dire si un client par exemple nommé Henri fait une réservation du 15/02/2024 au 16/02/2024 avec une note comme par exemple Réunion, il devrait m'inscrire " Henri Réunion " dans les dates 10, 11, 12, 13, 14, 15 et 16 février.
Tu aurai du l’expliquer ainsi depuis le début. C'est beaucoup plus clair.
Cependant, j'ai juste voulu attirer ton attention pour la pérennité des données de ton fichier.
Il y a beaucoup de choses qui ne vont pas dans ton fichier (formulaire).
Il me semble que tu essaies d'adapter des codes collectés sur le net ou d'autres fichiers. En effet, J'ai trouvé du code faisant référence à des combobox alors qu'il n'y en a aucune dans ton formulaire.
Tu risques d'avoir des surprises lors de l'exploitation de ton fichier.

Tu nous as pas donné la solution de ton plan B.

A+
 

Marvin57

XLDnaute Occasionnel
C'est pourquoi j'ai pondu un truc vendredi dans l'urgence, mais j'ai l'impression que tu ne l'as pas téléchargé et donc ni testé ni regardé le code.
Ouin ! C'est vraiment trop inzuste ! 😭
Re TooFatBoy,

alors je tiens vraiment à m'excuser auprès de toi, car c'est ma faute.
Je me suis trompé dans les téléchargements de fichier. Il faut le faire !!!!

Je viens d'essayer ton code modifié et cela me convient très bien.

Alors j'ai encore une question.

Faut-il changer ou modifier quelque chose ou alors je peux le laisser tel quel ?

Merci à toi pour cette info et encore une fois mes excuse.
 

Marvin57

XLDnaute Occasionnel
Tu aurai du l’expliquer ainsi depuis le début. C'est beaucoup plus clair.
Cependant, j'ai juste voulu attirer ton attention pour la pérennité des données de ton fichier.
Il y a beaucoup de choses qui ne vont pas dans ton fichier (formulaire).
Il me semble que tu essaies d'adapter des codes collectés sur le net ou d'autres fichiers. En effet, J'ai trouvé du code faisant référence à des combobox alors qu'il n'y en a aucune dans ton formulaire.
Tu risques d'avoir des surprises lors de l'exploitation de ton fichier.

Tu nous as pas donné la solution de ton plan B.

A+
Re ,

comme j'ai posté à l'instant à TooFatBoy, c'est moi qui ai fais une erreur en consultant vos fichiers de retour et j'ai vu à l'instant que la proposition de TooFatBoy me conviendrait parfaitement.

Je voulais juste savoir si on laisser tel quel ou s'il faut encore plus l'adapter .

Merci mille fois cp4 et encore désolé.
J'espère que cela ne sera pas retenu sur mes futures demandes.
 

ChTi160

XLDnaute Barbatruc
Bonjour le Fil
ce que j'ai modifié dans un premier temps (Perfectible)!
la Procédure
Sub TRIAGE_RESERVATIONS()
qui me renvoyait une erreur
VB:
Sub TRIAGE_RESERVATIONS() 
With Range("TbRes").ListObject
' Trier le tableau par DateReservation
    With .Sort
        With .SortFields
               .Clear
               .Add Key:=Range("TbRes[DATE ARRIVEE]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
               .Add Key:=Range("TbRes[DATE DEPART]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
        End With
           .Header = xlYes
           .MatchCase = False
           .Orientation = xlTopToBottom
           .SortMethod = xlPinYin
           .Apply
    End With
End With
End Sub
Jean marie
 
Dernière édition:

Marvin57

XLDnaute Occasionnel
Tu aurai du l’expliquer ainsi depuis le début. C'est beaucoup plus clair.
Cependant, j'ai juste voulu attirer ton attention pour la pérennité des données de ton fichier.
Il y a beaucoup de choses qui ne vont pas dans ton fichier (formulaire).
Il me semble que tu essaies d'adapter des codes collectés sur le net ou d'autres fichiers. En effet, J'ai trouvé du code faisant référence à des combobox alors qu'il n'y en a aucune dans ton formulaire.
Tu risques d'avoir des surprises lors de l'exploitation de ton fichier.

Tu nous as pas donné la solution de ton plan B.

A+
Re,

encore des infos.

Voila le Userform modifié comme il devrait être. J'ai également supprimer les codes inutiles liés à certains combobox que j'ai aussi supprimés.

Les modifications que TooFatBoy à mis en place fonctionnent pour la saisie d'une réservation.

Par contre si je clique sur un nom dans la listbox pour faire une modification il me l'a fait uniquement dans le tableau de l'onglet LISTING RESERVATIONS et pas dans le tableau PLANNING RESERVATIONS.

Si on pourrait faire fonctionner cela ce serait tout.

Merci à vous
 

Marvin57

XLDnaute Occasionnel
Bonjour le Fil
ce que j'ai modifié dans un premier temps (Perfectible)!
la Procédure

qui me renvoyait une erreur
VB:
Sub TRIAGE_RESERVATIONS()
With Range("TbRes").ListObject
' Trier le tableau par DateReservation
    With .Sort
        With .SortFields
               .Clear
               .Add Key:=Range("TbRes[DATE ARRIVEE]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
               .Add Key:=Range("TbRes[DATE DEPART]"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortTextAsNumbers
        End With
           .Header = xlYes
           .MatchCase = False
           .Orientation = xlTopToBottom
           .SortMethod = xlPinYin
           .Apply
    End With
End With
End Sub
Jean marie
Bonjour Jean marie,

Merci à vous aussi pour ce retour à mon problème.

Comme j'ai mentionné tout à l'heure, la proposition de TooFatBoy de vendredi laquelle j'avais complètement zappée à force de de faire 36 essais et modifications, me convitn très bien, le seul soucis, c'est que si je veux faire une modification d'une réservation il ne me la change pas dans le tableau de l'onglet PLANNING RESERVATIONS.

Je le place encore une fois en pièce jointe si vous auriez une solution.

Merci en tout cas pour votre aide.

Marvin57
 

Pièces jointes

  • MARVIN57 PLANNING RESERVATIONS_TooFatBoy.xlsm
    218 KB · Affichages: 1

TooFatBoy

XLDnaute Barbatruc
J'ai bien regardé et essayé ce que vous aviez envoyé, mais cela ne fonctionne pas.
Est-ce que l'absence de précision dans ta réponse veut dire qu'une éventuelle nouvelle proposition de ma part ne t'intéresse pas ?


je vous joins deux capture écran qui montrent à quoi devrait ressembler ma demande. Peut-être cela vous aidera.
C'est ce que ma dernière proposition fait chez moi, à ceci près que dans ma proposition il y a un "saut de ligne" (dans la cellule) entre le nom et l'annotation.
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
alors je tiens vraiment à m'excuser auprès de toi, car c'est ma faute.
Je me suis trompé dans les téléchargements de fichier. Il faut le faire !!!!
Arf ! Ça voudrait dire que tu n'es qu'un humain ?!?
Quelle déception d'apprendre ça !
😂 😂 😂

Plus sérieusement : ne pas tenir compte de mon message #44, je suis sur mon tél donc je réponds au fur et à mesure que je lis les réponses du fil de discussion...



Je voulais juste savoir si on laisser tel quel ou s'il faut encore plus l'adapter .
On a chacun sa logique de programmation, donc je dirais que, à mon avis, il y a encore pas mal de choses à modifier.

Mais pour le remplissage du tableau dans ma dernière proposition, on doit pouvoir supprimer l'appel à la macro de remplissage du tableau et laisser le reste tel quel.



Par contre si je clique sur un nom dans la listbox pour faire une modification il me l'a fait uniquement dans le tableau de l'onglet LISTING RESERVATIONS et pas dans le tableau PLANNING RESERVATIONS.
C'est "normal" : ta demande ne portait que sur l'ajout si je me souviens bien. C'est pourquoi dans l'urgence je n'ai fait que la partie "ajout" mais pas la partie "modification".

Pour la modification c'est un peu plus compliqué car il faut effectuer une recherche dans le tableau à modifier, afin de pouvoir effectuer la modification sur la bonne ligne.
 
Dernière édition:

Statistiques des forums

Discussions
315 091
Messages
2 116 111
Membres
112 662
dernier inscrit
lou75