Création d'échéancier

Bonjour à tous

je viens par la suite demander votre aide pour un test que je dois réaliser sur VBA.

Debutante, j'ai quelques notions mais pas avancées. Mon problème est que je n'arrive pas à traduire mes schémas en code.

Pour mon test je dois créer un échancier sur les critères de date, de sorte que lorsque je mets la date d'aujourd'hui le programme me déroule les données de j+1 et j+2.

Ma question c'est quelle fonction utiliser pour réaliser ce programme? filtrer les dates de la base de données, récuperer les dates j+1 et j+2 si elles existent sinon ne rien afficher.

Pouvez vous m'aider?

Bonjour,

Ça peut peut-être se faire via un filtre avancé ça en fonction de ce à quoi ressemble ton fichier, si tu veux mettre tes critères dans la même feuille que celle de ta base de donnée et que tout s'affiche dans la base de donnée sur place, c'est ce qu'il te faut je pense.

Il est possible également de lancer le programme lors de l'ouverture du classeur et de filtrer tout en fonction de la date d'aujourd'hui, de cette façon, il ne serait affiché que le strict nécessaire.

Mais avec le peu d'informations que tu as donné et sans fichier, c'est difficile de te répondre de façon plus précise...

Oui je comprends ce que vous dite, mais l'objectif est de laisser l'utilisateur insérer lui meme la date(j) qu'il veut en fonction de cette le programme lui déroulera les valeurs j+1 et j+2 uniquement.

l'interet de cet échéancier c'est lorsqu'on travail sur une base de donnée avec des centaines de dates, dans ce cas votre méthode n'est pas bonne.

ci joint le fichier excel avc la consigne à respecter.

merci pour votre aide?

21test-vba.xlsm (16.33 Ko)

Bonsoir,

ci-jointe une proposition via l'utilisation d'un filtre avancé sur la base de données.

(code associé à la feuille exemple)

27test-vba1.xlsm (29.38 Ko)

salut thev

pouvez vous m'expliquer comment vous avez proceder? j'arrive pas à voir le code

Bonjour,

Une autre proposition à étudier.

Cdlt.

10test-vba.xlsm (28.81 Ko)

Bonjour Ibrahim,

[quote="dans ton post d'hier à 23:03, tu"]pouvez-vous m'expliquer comment vous avez procédé? j'arrive pas à voir le code[/quote]

explication en 2 images :

screen

pour Feuil2 ou Feuil4, au choix : double-clic dessus ; ou sélection, puis appui sur la touche Entrée

dhany

Bonjour,

Je te renvoie le fichier avec la procédure (évènementielle) commentée.

Pour visualiser la procédure : ALT F11 dans la feuille de calcul et regarder le contenu du module Feuil2 (Filtre).

Cdlt.

20test-vba.xlsm (29.53 Ko)

Nota : Les données sont mises sous forme de tableaux !...

Bonjour,

Jean Eric merci le programme ce que je recherche.

mais j'arrive toujours pas à voir la procédure commentée, les macros sont vides.

pourrais tu me le renvoyer ?

Question: je pourrais toutefois réadapter les codes à un autre fichier?

merci beaucoup

Re,

ALT F11 dans la feuille de calcul et regarder le contenu du module Feuil2 (Filtre).

snip 20180705105418

Bonsoir à tous

je vous remercie bcp pour l'aide que vous m'avez apporter ça m'est d'une grande utilité.

j'ai repris le code de Henri pour élaborer un échancier du meme type sur un fichier mais ça bug au niveau "Set lo2 = Me.ListObjects(1)

With lo2

If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete"

Ci-joint le document et le code que j'ai utilisé

6exercice-vba.xlsx (23.42 Ko)
5exercice-vba.xlsx (23.42 Ko)
9code.docx (13.08 Ko)

Bonjour,

Rappel !

Nota : Les données sont mises sous forme de tableaux !...

Bonjour Ibrahim, Jean-Eric,

je te retourne ton fichier .xlsx converti en .xlsm :

26exercice-vba.xlsm (31.00 Ko)

rappel : un fichier .xlsx ne peut pas contenir de code VBA (donc pas de macro) !

comme indiqué par Jean-Eric, j'ai converti ton tableau de la feuille "AFFICHAGE" en tableau structuré

(c'est ce qui est appelé ListObject en VBA)

j'ai fait 2 petites modifs au code VBA initial de Jean-Eric ; je te laisse les trouver.

le code VBA est bien sûr dans le module de la feuille "Sheet3 (AFFICHAGE)"

fais d'abord tous les tests, puis donne-moi ton avis.

dhany

Bonjour,

oui je viens de comprendre mon erreur

merci pour votre aide.

dans l'avenir quel conseil avez vous à me donner pour réaliser de telle procédure?

je voulais également savoir si vous etes passé par un enregistrement de macro ou manuellement?

merci d'avance

Bonjour Ibrahim,

pour réaliser de telles procédures, il faut utiliser les instructions avec ListObjects seulement après avoir créé sur la feuille de calcul ton tableau structuré ; pour répondre à ta 2ème question, je ne suis pas passé par l'enregistreur de macros, donc : « en manuel ».

dhany

Rechercher des sujets similaires à "creation echeancier"