Archivage à partir d'une date

Bonjour,

Je souhaiterai savoir comment créer un macro d'archivage de données à partir d'une date.

Dans mon fichier joint, vous verrez sur l'onglet "Accueil" un tableau bleu qui contient les contrats dit " en cours" et j'aimerai que lorsque je clique sur le bouton archiver les contrat, que toutes les lignes du tableau bleu dont les cellules contenant une date de fin de contrat (colonne E) inférieur à la date du jour ( cellule A1) viennet automatiquement se copier dans le tableau de droite, les un en dessous des autres.

Et je souhaiterai dans un second temps que lorsque je crée un nouveau contrat, l'écriture dans le tableau bleu se face en priorité dans les lignes dites libres, laissée par un éventuel archivage, et non de façon "B"+1 comme je lui ai demandé de faire dans ma macro "Bouton 1_ajout salarié"

J'ai tenté une écriture dans la macro "archivage_accueil" mais je bloque... ( je débute en VBA )

Merci beaucoup pour votre aide.

Joker88

Bonjour

Je me suis permis de convertir tes tableaux en tableau structuré

A+ François

Bonjour Fanfan,

Et merci pour votre aide et surtout pour votre solution à mon problème, c'est vraiement top.

J'ai essayé de regarder pour comprendre ce que vous avez modifié dans la macro, et j'ai une question :

Dans le code suivant :

If [t_salarié].Item(1, 1) <> "" Then i = [t_salarié].Rows.Count + 1 Else i =.

A quoi correspond [t_salarié].Item ? que vous avez ajouté pour remplacer Sheets("Accueil") ?

D'autre part, comment avez vous ajouter les filtres sur la ligne 11 et comment vous en servez vous après dans la macro ?

Désolé de vous embêter avec ces questions, mais je débute et je souhaite vraiement progresser du coup j'essaie de comprendre.

Merci encore pour votre aide.

Bonne soirée.

Joker88

Bonjour

Comme je te l'ai dit j'ai converti tes données en tableau.

[T_salarié] et T_archive sont ces tableaux

la 1ère ligne vide est [t_salarié].Rows.Count+1 mais dans un tableau vide il y a toujours une ligne donc si la première ligne est vide la ligne est 1

et le item permet de voyager dans ce tableau item(ligne, colonne)

Si par exemple ton tableau tu le déplace les macros sont toujours ok.

Comme tu peux le voir c'est le tableau qui est utilisé si il commence en ligne 10 et en colonne 2 (B10) la 1ére donnée est item(1,1)

Formulaire liste multi-colonnes (free.fr)

Pour le filtre je recherche avec la fonction match si il y a déjà une correspondance dans les données copiées. si oui si k est plus petit

si oui je remplace les données.

si pas de concordance je rajoute une ligne et je copie les données (j'utilise copie à cause du lien hypertexte)

A+ François

Merci François pour tes explications, c'est plus clair pour moi.

Je vais essayer de comprendre en décortiquant la macro, pour pouvoir la reproduire ensuite.

Merci beaucoup.

Au plaisir de te recroiser sur le forum sur un prochain problème !

Bonne fin de semaine.

A+

Rémi

Rechercher des sujets similaires à "archivage partir date"