Problème Formule INDEX lorsque je fais référence à une table
Oui mais le problème c est que desormais il ne faut plus que ca affiche le premier mais pluto une liste deroulante qui permet de selectionner le bon vol. ca n'en affiche qu'un s'il y en a un ou plusieurs sil y en a plusieurs. et la plus de index. et le fichier est le fichier original que tu as telechargé. Merci pour ton aide !
Voici le fichier , en changeant la valeur de la cellule A7 ou B7, les 2 listes déroulantes se créent en D7 et D8.
Re bonjour comment vas tu ?
J'ai complètement changé l'organisation de mon fichier et je pense que ce sera plus simple comme cela. voici ce que je veux desormais j'ai essayé de tout détailler.
Voici comment est agencé mon fichier excel :
En case F6 de mon onglet « Formulaire » : Je veux une liste déroulante dans laquelle il y aura un ou plusieurs numéros de vols OUT (il peut y en avoir un ou plusieurs) récupéré dans l’onglet « Base_De_Donnees_Out ».
Cela dépendra de :
Aéroport de départ
Aéroport d’arrivée
De la fréquence du vol
De la période donnée.
Je veux que ce ou ces numéros de vols s’affichent SI :
La valeur de B6 de l’onglet « Formulaire = la valeur d’une des cases de la colonne F en partant de F10 jusque Fn de l’onglet « Base_De_Donnees_Out » ET que la valeur C6 de l’onglet « Formulaire = la valeur d’une des cases de la colonne G en partant de G10 jusque Gn de l’onglet « Base_De_Donnees_Out »
ET que
Le jour de vol (en K7 de l’onglet « Formulaire ») correspond a un jour de vol pour les dates sélectionnées (c’est la fréquence de vol souhaité) à vérifier dans l’onglet « Base_De_Donnees_Out ».
K7 est de forme validation de donnée par liste (il y a 8 propositions) :
« Tous les jours 1 » équivaut à tous les lundi
Jusque « Tous les jours 7 » pour tous les dimanches
Et il y a une case « Tous les jours » qui correspond à une fréquence de vol égale a tous les jours de la semaine.
Il prendre en compte la plage de date dans les cases :
G4 « de l’onglet Formulaire » (case du 1er allée)
I4 « de l’onglet Formulaire » (case du dernier retour)
Et compare avec la correspondance des dates affichées en ligne a partir de la ligne I9 puis J9…
Voici le code de generation de plage de dates avec lequel il faudra correspondre :
Sub Generer_Plages_De_Dates_En_Ligne_Avec_Num_Semaine_Allee()
Dim DebutSaison As Date
Dim FinSaison As Date
Dim DateCourante As Date
Dim Plage As Range
Dim Feuille As Worksheet
Dim NumSemaine As Integer
' Spécifiez la feuille de calcul où se trouvent les cellules de début et de fin de saison
Set Feuille = ThisWorkbook.Sheets("Base_De_Donnees_Out")
' Spécifiez les cellules pour le début et la fin de la saison
DebutSaison = Feuille.Range("G3").Value
FinSaison = Feuille.Range("H3").Value
' Spécifiez la première cellule où vous voulez afficher les plages de dates (I9 dans cet exemple)
Set Plage = Feuille.Range("I9")
' Boucle pour générer les plages de dates horizontalement
DateCourante = DebutSaison
Do While DateCourante <= FinSaison
NumSemaine = WorksheetFunction.IsoWeekNum(DateCourante) ' Obtenez le numéro de semaine
Plage.Value = "S" & NumSemaine & ": " & DateCourante & " - " & DateCourante + 7
Plage.EntireColumn.AutoFit ' Ajustez la largeur de la colonne
Set Plage = Plage.Offset(0, 1) ' Passe à la cellule suivante à droite
DateCourante = DateCourante + 7 ' Ajoute 7 jours
Loop
End SubIl faut une comparaison entre es valeurs B6 et C6 de l’onglet « Formulaire » (ce sont les codes d’aeroports OUT B6 départ et C6 arrivée.) Et Il faudra chercher dans l’onglet « Base_De_Donnees_Out » les différents numéros de vols dans la colonne H (à partir de H10).
Pour trouver les bons vols, il faut que :
que je veux lier aux
en case F7 : Numéro de vol IN (il peut y en avoir un ou plusieurs) que je veux lier aux différents numeros de vols. "Base_De_Donnees_Out"
ET dans les cases à partir de I10, il y a les fréquencemètres des différentes plages de dates correspondantes de la ligne 9.
Par exemple Si I9 correspond à la Saison 44 de la plage de dates 01/11/23 au 08/11/23 alors le frequencemetre pour cette période concernant n’importe quel vol se trouvera en I10 puis I11 jusque In.
Le frequencemetre est indiqué de cette manière :
S’il y a un jour de vol alors le numéro de jour correspondant qu’il faudra comparer avec la case K7 de l’onglet formulaire.
1 = Lundi
2= mardi
Jusque 7= dimanche
_=pas de vol le jour correspondant
Exemples :
Un fréquencemètre = 1234567 (cela signifie qu’il y a un vol tous les jours)
1_3_567 = Vols tous les jours sauf le mardi et jeudi.
Il faudra donc me ressortir tous les vols en fonction de ces différentes caractéristiques.
Dis moi ce que t'en pense et je suis bloqué. je te joins le fichier sans les données confidentielles et je suis bloqué je n'ai que des erreurs. Merci pour ton aide !
Je viens de voir l'ancien formulaire merci c'est incroyable. Sauf que je ne comprends pas le code lol.
D'ailleurs j'aurai bien aimé créer une sorte d'onglet qui permettrait la lecture des différents fréquencemètres en fonction des vols disponibles. S'il y a 3 vols dispo alors ca me montre les fréquencemètres limite sous forme de tableau pour chaque vol. J'ai l'onglet du frequencemetre tu verras
Bonjour,
Pas tout compris. je me suis arrêté aux remplissages des listes déroulantes des N° de vol IN et OUT. Pour le reste, c'est pas clair dans mon esprit, le mieux c'est de mettre un fichier avec un exemple de résultat attendu.
Cdlt
Bonjour,
J'ai vu ton fichier merci beaucoup.
j'ai vu que ca correspond un peu à ce que je veux.
je vais essayer de faire au plus simple.
Il faut que lorsque je mets à jours les différentes destinations les numéros de vols correspondants se mettent à jour également.
J'ai essayé de tester le fichier et je constate que pour l'allée ou le retour tous les numéros de vols s'affichent et pas seulement les numéro de vols "OUT" et "IN" (peut être lié au manque de mise à jour des numéros de vol ?)
Il faut également que les numéros de vols s'affichent en fonction des vols un exemple :
Si ma plage de date est comprise entre le 08/11/23 et le 15/11/23 comme c'etait le cas, on constate que pour un vol "OUT" vers JFK j'ai un frequencemetre de "______7" (Case I12 de l'onglet "Base_De_Donnees_Out")
cela signifie qu'il y a un vol uniquement le vol le dimanche ainsi si je mets que je veux "tous les jours 1" par exemple dans la case "Freq de vol" alors le numero de vol correspondant ne devrait pas s'afficher car il n'y a pas de vol le lundi.
Cas contraire sil y avait tous les jours 7 alors le ou les numéro(s) de vol correspondant s'afficheraient. il faudrai que pour ces destinations il y ai un vol le jour correspondant dans le frequencemetre.
je ne sais pas si tu vois.
et tu as vu il y a une case "durée du circuit" il faut prendre en compte cette case pour le retour. C'est cette case qui calcule les retours.
Sur la plage de date qu'on sélectionne, si c est du 08/11/23 au 08/12/23 et que la duree du circuit est de 7 jours alors il y aura dans le formulaire que se remplira automatiquement à l'aide d'un bouton que j'ajouterai :
un vol allée le 08/11/23 et un retour à +7jours soit au 15/11/23
Puis un depart le 15/11/23 et un retour à +7 jours soit au 22/11/23
et ainsi de suite jusque la fin de la plage sélectionné.
Pour l'onglet frequencemetre : je vais essayer de mieux expliquer. Je vais essayer aussi de mon coté de modifier cela. Merci !!
Bonjour Arturo,
as-tu des idées concernant mon problème s'il te plaît ?
Merci beaucoup !
Bonjour,
Par manque de temps j'ai un peu décroché ces temps-ci, j'ai regardé de nouveau aujourd'hui et, j'ai beaucoup de mal à comprendre, c'est trop confus, trop d'informations en même temps.
Vous êtes dans votre domaine et maîtrisez bien tous vos tableaux, alors que pour moi, ce n'est franchement pas clair.
Quand c'est comme ça, il faut avancer étape par étape et surtout, il faut déposer un fichier bien commenté et avec les résultats attendus.
De plus, on est quand même loin de la demande initiale.
Cdlt
Bonjour,
Je comprends. je vais essayer de synthétiser tout ca pour que ce soit le plus compréhensible possible.
Je reviens vers vous quand j'aurais fais cela je vais essayer d'avoir quelque chose avant la fin de cette semaine.
Bonne journée :)
Bonjour Arturo,
J'ai fait un fichier expliquant ce sur quoi je bloquais. j'ai essayé de faire au plus simple en expliquant le principe.
Je te joins ce document ainsi que le formulaire que j'ai un peu modifié.
Je te remercie par avance pour ton aide.
Bonne journée :)