Macro VBA avec plusieurs critères de recherche ?

Bonjour

je suis en train de réaliser un fichier pour faire la synthèse des formations de personnes par rapport au critère Nom agent et Nom de stage.

j'ai réaliser un tableau avec des formules matriciennes { } mais le soucis c'est que cela prend énormément de temps au total j'ai 300 personnes et 70 formations à fusionner.

je voudrais réaliser une macro pour cherche le critères NNI et Nom de stage dans l'onglet Fichier E-Formation et faire apparaître dans l'onglet Tab Habilitation la date du dernier stage.

Je suis pas très bon en VBA, j'ai essayé mais j'ai besoin de vous...

VBA que j'ai écris :

Sub Habilitation()

Sheets("Fichier E-Formation").Select

'ou trouver la dernier ligne '

DernLigne = Range("B" & Rows.Count).End(xlUp).Row

'Recherche date Stage par rapport à l'agent

For f = 4 To DernLigne

If Cells(f, 20).Value Like Cells(f, 20) And Cells(f, 38).Value Like "Forma1" Then

Sheets("Tab Habilitation").Cells(i, $L).Value = Cells(f, 120)

ElseIf Cells(f, 20).Value Like "A1" Then

Cells(f, 121).Value = "Ok"

Else

Cells(f, 121).Value = "XXX"

End If

Next

End Sub

je vous mets le fichier exemple sans VBA je serais preneur si vous pouvez m'aider

Le but de mon fichier c'est d'avoir un point précis des formations des agents à l'instant T selon les formations obligatoire avec la date de réalisation et la colonne à coté la date de validé du stage (selon stage 2 ans d'autre 4ans ...)

si besoin je reste à votre disposition

Merci d'avance

Cordialement Nicolas

bonjour

j'ai regardé ton fichier

tu es près de la solution :

  • un onglet pour noter les formations (une ligne = 1 personne allant en formation)
  • des colonnes de détails
  • habilitation ou pas habilitation (H ou vide)
  • DATE DE FIN
  • DATE LIMITE DE VALIDITE

ensuite tu fais un état grâce à un TCD (oui, ça fait des calculs, mais ici on va faire un filtrage ! )

et tu mets la date limite dans la zone de calculs avec le choix de calcul MAXIMUM et tu filtres sur "habilitation"

tu fais un autre TCD identique à peu près, avec la date de fin en maximum. tu ne filtres pas "habilitation".

dans 20 minutes tu as terminé.

nota : on suppose que habiltation est une formation pour laquelle on remplit qq autres colonnes (test, habilitation signée par le patron...)

Bonjour

merci pour ces indications.

par contre cela fait 2h que je suis dessus j'y arrive pas lol

pour le TCD pas de soucis par contre comment je renvoie la bonne date de stage dans mon onglet "Tab Habilitation" ?

J'aurais aimer arriver à faire une recherche VBA et que la date remonte automatiquement dans mon premier onglet au bon endroit ( par rapport NNI et Code Stage)

est ce que c'est possible ?

Cordialement Nicolas

re

dans ton TCD, tu mets les dates limites dans la zone des calculs, et tu ne fais pas la SOMME mais tu prends le MAXIMUM

ainsi tu as la date la plus lointaine, donc la date limite de la toute dernière habilitation

tu peux faire un autre MAX sur la date d'habilitation (ce qui ne sert à rien car l'important c'est la date limite)

reviens avec un fichier simplifié si problème

Rechercher des sujets similaires à "macro vba criteres recherche"