|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
Bonjour à tous,
J'en reviens à vous car cela est trop compliqué pour mes faibles notions en vba. J'ai une feuille nomée "Feries" avec les dates des jours fériées sur plusieurs années en "B2" et en "C2" (Jour de l'An, Lundi de Pâques, Fête du travail, etc...) qui correspont aux dates des jours fériés depuis 2010 jusqu'en 2024. Sur une autre feuille nomée "Prestations" j'ai en "A2" toutes les dates du calendrier depuis 2010 jusqu'en 2024 Comment en vba effectuer une recherche dans la feuille "Prestations" et chaque fois qu'il trouve une date de jour feries qui se trouve dans la feuille "Feries" ajouter dans la feuille "Prestations" le nom du jour ferie en "C" (Jour de l'An, Lundi de Pâques, Fête du travail, etc...) ? Avec une formule excel cela donne +- : =SiErreur(RechercheV($B$2;Ferie;2;Faux);"") Merci de m'avoir lu fasedan |
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Bonsoir
Curieux comme procédé d'écrire tous les jours fériés jusqu'à 2024! ![]() Pour ta demande, tu as ta formule Excel qui marche, il suffit de la traduire en vba. Ci-après un exemple
Code :
__________________
Cordialement. |
||
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
Merci de mavoir lu et repondu,
En fait j'ai une feuille nomée "Prestations" dans laquelle il y a en colonne "A" toutes les dates sur plusieurs années et je voudrais retrouver les jours fériés de chaques années et indiquer en colonne "D" "Jour de l'An, Lundi de Pâques, Fête du travail, etc... J'ai lu pas mal sur le forum, mais je ne sais comment m'y prendre, car il y a des jours fériés fixes et non fixes et de quel manière rechercher les dates en "A" pour savoir si elles sont fériés ou pas. Novice et passionné par le vba mais là, je suis dans le gaz total. Feuille "Prestations" ........"A" .........................."D" 01/01/2010.................Jour de l'An 02/01/2010 etc.. 04/04/2010 05/04/2010.................Lundi de Pâques 06/04/2010 etc... etc... Merci d'avance pour votre aide. fasedan |
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Étant novice n'est pas une justification pour ne pas lire ce qu'on te propose.
Dans ton premier post tu parle de colonne C, maintenant de colonne D Relis ma première proposition (en entier et non en diagonale) et essaies d'adapter.
__________________
Cordialement. |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
Comme vous disiez plus haut, "curieux comme procédé..."
Je me demandais si cela n'était pas plus aisé de trouver directement les jours fériés sur la feuille "Prestations" plutôt que (RechercheV) dans les celulles. Comme je suis incapable de trouver les jours fériés en vba, je les ais directement notés sur une feuilles "Feries" pour les transposer sur la feuille "Prestations" par (RechercheV). Pour ce qui est de votre code, cela fonctionne mais il recopie la formule à l'identique à chaque fois. Et je n'arrive pas à incrémenter de 1 le (R2C1), Donc de "D2" à "D3" à "D4" etc... en D2: =SIERREUR(RECHERCHEV($A$2;Plage_Feries;2;FAUX);"") .Formula = "=IFERROR(VLOOKUP(R2C1,Plage_Feries,2,FALSE),"""")" en D3: =SIERREUR(RECHERCHEV($A$3;Plage_Feries;2;FAUX);"") .Formula = "=IFERROR(VLOOKUP(R2C2,Plage_Feries,2,FALSE),"""")" en D4: =SIERREUR(RECHERCHEV($A$4;Plage_Feries;2;FAUX);"") .Formula = "=IFERROR(VLOOKUP(R2C3,Plage_Feries,2,FALSE),"""")" etc... Merci pour votre patience envers moi fasedan |
|
|
00
|
|
|
#6 | ||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Regarde ce que j'avais proposé
Code :
PS: J'ai bien rencontré quelque part sur ce forum un petit quelque chose qui permet de donner les jours fériés.
__________________
Cordialement. |
||
|
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
Merci de répondre mais là plus rien ne fonctionne.
je récapitule pour rester sur la même longueur d'onde. Car je n'y comprend plus rien. Les dates des jours fériés sur plusieurs années sont sur la feuille "Feries" en colonne "A" et en colonnes "B" les noms des jours fériés: Jour de l'An, Lundi de Pâques, etc Exemple feuille "Feries" : ......A.......................B 01/01/2010..........Jour de L'an 05/04/2010..........Lundi de Pâques etc Sur la feuille "Prestations" les dates sur plusieurs années en "A", les Mois/Année en "B" et en "C" y faire figurer les noms des jours fériés par rapport à la date en "A" recherchées dans la feuille "Fériés" avec (RechercheV) Exemple feuille "Prestations" : ......A...............B.................C 01/01/2010....Janv-2010......Jour de l'An 02/01/2010....Janv-2010...... etc.. 04/04/2010....Avri-2010....... 05/04/2010....Avri-2010.......Lundi de Pâques 06/04/2010....Avri-2010....... etc... en modifiant votre code : .Formula = "=IFERROR(VLOOKUP(A2,Feries,2,FALSE),"""")" par : .Formula = "=IFERROR(VLOOKUP(R2C1,Plage_Feries,2,FALSE),"""")" cela fonctionnais et m'écrivais la formule sur la feuille "Prestations" en C2 et me donnais bien pour le 01/01/2010 le Jour de l'An mais pas sur les lignes suivantes, j'avais aussi créer une plage de recherche sur la feuille "Feries" appelée : Plage-Feries Mais en laissant votre code tel quel, cela ne fonctionne pas. Encore merci pour votre incroyable patiente envers moi. fasedan |
|
|
00
|
|
|
#8 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Oh là là, je suis surpris
![]() Code :
.Formula = "=IFERROR(VLOOKUP(A2,Plage_Feries,2,FALSE),"""")"
__________________
Cordialement. |
|
|
00
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
Cela fonctionne mais uniquement sur la celulle "C2" de la feuille "Prestation" et pas sur les celulles en dessous jusque la dernière trouvée.
Je suis le remede contre la crise de nerfs. Mille merci. fasedan |
|
|
00
|
|
|
#10 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Plage_Feries est le nom de quelle plage?
__________________
Cordialement. |
|
|
00
|
|
|
#11 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
Bonsoir,
Voici une macro réalisée: Code :
un grand merci. bon amusement, fasedan |
||
|
|
00
|
|
|
#12 | ||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Code :
__________________
Cordialement. |
||
|
|
00
|
|
|
#13 |
|
Candidat au titre de Membre du Club
![]() Inscription : septembre 2008 Messages : 48 ![]() |
J'ai du m'absenter quelques temps.
Me revoilà pour vous remercier de votre attention que vous m'avez porté. Votre code fonctionne parfaitement. Merci à mercatog mais aussi à devellopez.com fasedan |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com