public void Generer(System.Windows.Forms.ListView liste_actions) { string equiv_A1_nom; //Pour stocker l'équivalent au format "A1" de (ligne N°1, colonne N°1) sous forme de 2 entiers string equiv_A1_numero; string equiv_A1_poste; //Objet référençant le fichier Excel de la feuille de match fdm = new GestionExcel(); //DECLARATIONS System.Drawing.Color rouge = System.Drawing.Color.Red; //Variable référençant la couleur rouge System.Drawing.Color bleu = System.Drawing.Color.Blue; //Couleur bleue string[] ligne_action = new string[2]; //Pour stocker Joueur, action //PARTIE LECTURE (conversion d'informations) fdm.OuvrirFichierExistant(chemin.fdm, "Feuil1"); //Ouverture de l'Excel contenant le template de feuille de match //Comptage des buts dans la liste des buts pour chaque équipe score_domicile = Program.eq_domicile.buts.Count(); score_exterieur = Program.eq_exterieur.buts.Count(); //Liste des buteurs pour chaque équipe foreach (but goal in Program.eq_domicile.buts) { liste_buts_domicile += goal.joueur + "(" + goal.minute.ToString() + "e) \n"; //ex: John Terry (20e) } foreach (but goal in Program.eq_exterieur.buts) { liste_buts_exterieur += goal.joueur + "(" + goal.minute.ToString() + "e) \n"; } //Liste des remplacements pour chaque équipe foreach (remplacement remplacement in Program.eq_domicile.remplacements) { liste_remp_domicile += remplacement.remplace + " pour " + remplacement.remplaçant + "\n"; } foreach (remplacement remplacement in Program.eq_exterieur.remplacements) { liste_remp_exterieur += remplacement.remplace + " pour " + remplacement.remplaçant + "\n"; } //PARTIE ECRITURE //1er volet de la feuille de match fdm.EcrireCellule(Program.eq_domicile.GetName(true), cellule_eq_domicile); fdm.EcrireCellule(Program.eq_exterieur.GetName(true), cellule_eq_exterieur); fdm.EcrireCellule(score_domicile.ToString(), cellule_score_domicile); fdm.EcrireCellule(score_exterieur, cellule_score_exterieur); fdm.EcrireCellule(date, cellule_date); fdm.EcrireCellule(liste_buts_domicile, cellule_buts_domicile); fdm.EcrireCellule(liste_buts_exterieur, cellule_buts_exterieur); fdm.EcrireCellule(liste_remp_domicile, cellule_remp_domicile); fdm.EcrireCellule(liste_remp_exterieur, cellule_remp_exterieur); fdm.EcrireCellule(championnat, cellule_championnat); fdm.EcrireCellule(stade, cellule_stade); fdm.EcrireCellule(arbitre_principal, cellule_arb_principal); fdm.EcrireCellule(arbitre_remplaçant, cellule_arb_remplaçant); fdm.EcrireCellule(arbitre_touche1, cellule_arb_touche1); fdm.EcrireCellule(arbitre_touche2, cellule_arb_touche2); fdm.EcrireCellule(Program.eq_domicile.GetEntraineur(), cellule_entraineur_domicile); fdm.EcrireCellule(Program.eq_exterieur.GetEntraineur(), cellule_entraineur_exterieur); //Logos string chemin_logo_domicile = chemin.logos + Program.eq_domicile.GetName(false) + ".jpg"; string chemin_logo_exterieur = chemin.logos + Program.eq_exterieur.GetName(false) + ".jpg"; fdm.InsererImage(abs_logo_domicile, ord_logo_domicile, largeur_logos, hauteur_logos, chemin_logo_domicile); fdm.InsererImage(abs_logo_exterieur, ord_logo_exterieur, largeur_logos, hauteur_logos, chemin_logo_exterieur); //Titulaires //Domicile for (UInt16 i = 0; i < 11; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_titulaires, c_eq1); //Equivalent au format "A1" des lignes colonnes référencées sous la forme (1,1) equiv_A1_numero = fdm.AdresseCellTypeA1(l_titulaires, c_eq1 + 1); equiv_A1_poste = fdm.AdresseCellTypeA1(l_titulaires, c_eq1 + 2); fdm.EcrireCellule(Program.eq_domicile.titulaires[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_domicile.titulaires[i].GetNumber(), equiv_A1_numero); fdm.EcrireCellule(Program.eq_domicile.titulaires[i].GetPoste(), equiv_A1_poste); l_titulaires++; } //Extérieur l_titulaires -= 11; for (UInt16 i = 0; i < 11; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_titulaires, c_eq2); equiv_A1_numero = fdm.AdresseCellTypeA1(l_titulaires, c_eq2 + 1); equiv_A1_poste = fdm.AdresseCellTypeA1(l_titulaires, c_eq2 + 2); fdm.EcrireCellule(Program.eq_exterieur.titulaires[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_exterieur.titulaires[i].GetNumber(), equiv_A1_numero); fdm.EcrireCellule(Program.eq_exterieur.titulaires[i].GetPoste(), equiv_A1_poste); l_titulaires++; } //Dispositifs string chemin_disp_domicile = chemin.images_dispositifs + Program.eq_domicile.GetDisp(false) + ".jpg"; string chemin_disp_exterieur = chemin.images_dispositifs + Program.eq_exterieur.GetDisp(false) + ".jpg"; fdm.InsererImage(abs_disp_domicile, ord_disp_domicile, largeur_disp, hauteur_disp, chemin_disp_domicile); fdm.InsererImage(abs_disp_exterieur, ord_disp_exterieur, largeur_disp, hauteur_disp, chemin_disp_exterieur); //Remplaçants //Domicile for (UInt16 i = 0; i < 7; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_remplaçants, c_eq1); equiv_A1_numero = fdm.AdresseCellTypeA1(l_remplaçants, c_eq1 + 1); fdm.EcrireCellule(Program.eq_domicile.remplaçants[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_domicile.remplaçants[i].GetNumber(), equiv_A1_numero); l_remplaçants++; } //Extérieur l_remplaçants -= 7; for (UInt16 i = 0; i < 7; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_remplaçants, c_eq2); equiv_A1_numero = fdm.AdresseCellTypeA1(l_remplaçants, c_eq2 + 1); fdm.EcrireCellule(Program.eq_exterieur.remplaçants[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_exterieur.remplaçants[i].GetNumber(), equiv_A1_numero); l_remplaçants++; } //Actions durant le match (2ème volet de la feuille de match) fdm.ChangerDeFeuilleActive("Feuil2"); foreach (System.Windows.Forms.ListViewItem action in liste_actions.Items) { //Les actions commencent dans l'Excel à la ligne spécifiée dans ligne_actions (attribut). ligne_action[0] = action.SubItems[0].Text + "'"; //Minute ligne_action[1] = PhraseAction(action); //Phrase descriptive fdm.EcrireLigne(ligne_action, index_actions); //Ecriture de la ligne complète minute + action fdm.SelectionRange(index_actions, 1, 1, 2); //Sélection des 2 cellules pour changer leur mise en forme System.Drawing.Color couleur = action.ForeColor; if (couleur == bleu) //Coloration des cellules de chaque action pour différencier les 2 équipes { fdm.MiseEnForme(ColorIndex.Azur, ColorIndex.Automatique); } if (couleur == rouge) { fdm.MiseEnForme(ColorIndex.Rouge, ColorIndex.Automatique); } index_actions++; } //Affichage de l'Excel final sous l'application Excel elle-même // fdm.AfficherXL(); à décommenter pour afficher l'Excel de la feuille de match à la fin }
public void Generer(System.Windows.Forms.ListView liste_actions) { string equiv_A1_nom; //Pour stocker l'équivalent au format "A1" de (ligne N°1, colonne N°1) sous forme de 2 entiers string equiv_A1_numero; //Objet référençant le fichier Excel de la feuille de match fdm = new GestionExcel(); //DECLARATIONS System.Drawing.Color rouge = System.Drawing.Color.Red; //Variable référençant la couleur rouge System.Drawing.Color bleu = System.Drawing.Color.Blue; //Couleur bleue string[] ligne_action = new string[2]; //Pour stocker Joueur, action //PARTIE LECTURE (conversion d'informations) fdm.OuvrirFichierExistant(chemin.fdm, "Feuil1"); //Ouverture de l'Excel contenant le template de feuille de match //Comptage des buts dans la liste des buts pour chaque équipe score_domicile = Program.eq_domicile.buts.Count(); score_exterieur = Program.eq_exterieur.buts.Count(); //Liste des buteurs pour chaque équipe foreach (but goal in Program.eq_domicile.buts) { liste_buts_domicile += goal.joueur + "( " + goal.minute.ToString() + "e) "; //ex: John Terry (20e) } foreach (but goal in Program.eq_exterieur.buts) { liste_buts_domicile += goal.joueur + "( " + goal.minute.ToString() + "e) "; } //Liste des remplacements pour chaque équipe foreach (remplacement remplacement in Program.eq_domicile.remplacements) { liste_remp_domicile += remplacement.remplace + " --> " + remplacement.remplaçant + "\n"; } foreach (remplacement remplacement in Program.eq_exterieur.remplacements) { liste_remp_exterieur += remplacement.remplace + " --> " + remplacement.remplaçant + "\n"; } //PARTIE ECRITURE //1er volet de la feuille de match fdm.EcrireCellule(Program.eq_domicile.GetName(), cellule_eq_domicile); fdm.EcrireCellule(Program.eq_exterieur.GetName(), cellule_eq_exterieur); fdm.EcrireCellule(score_domicile.ToString(), cellule_score_domicile); fdm.EcrireCellule(date, cellule_date); fdm.EcrireCellule(score_exterieur, cellule_score_exterieur); fdm.EcrireCellule(liste_buts_domicile, cellule_buts_domicile); fdm.EcrireCellule(liste_buts_exterieur, cellule_buts_exterieur); fdm.EcrireCellule(liste_remp_domicile, cellule_remp_domicile); fdm.EcrireCellule(liste_remp_exterieur, cellule_remp_exterieur); fdm.EcrireCellule(championnat, cellule_championnat); fdm.EcrireCellule(stade, cellule_stade); fdm.EcrireCellule(arbitre_principal, cellule_arb_principal); fdm.EcrireCellule(arbitre_remplaçant, cellule_arb_remplaçant); fdm.EcrireCellule(arbitre_touche1, cellule_arb_touche1); fdm.EcrireCellule(arbitre_touche2, cellule_arb_touche2); fdm.EcrireCellule(entraineur_domicile, cellule_entraineur_domicile); fdm.EcrireCellule(entraineur_exterieur, cellule_entraineur_exterieur); //Titulaires //Domicile for (UInt16 i = 0; i < 11; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_titulaires, c_eq1); //Equivalent au format "A1" des lignes colonnes référencées sous la forme (1,1) equiv_A1_numero = fdm.AdresseCellTypeA1(l_titulaires, c_eq1 + 1); fdm.EcrireCellule(Program.eq_domicile.titulaires[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_domicile.titulaires[i].GetNumber(), equiv_A1_numero); l_titulaires++; } //Extérieur l_titulaires -= 11; for (UInt16 i = 0; i < 11; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_titulaires, c_eq2); equiv_A1_numero = fdm.AdresseCellTypeA1(l_titulaires, c_eq2 + 1); fdm.EcrireCellule(Program.eq_exterieur.titulaires[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_exterieur.titulaires[i].GetNumber(), equiv_A1_numero); l_titulaires++; } //Remplaçants //Domicile for (UInt16 i = 0; i < 7; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_remplaçants, c_eq1); equiv_A1_numero = fdm.AdresseCellTypeA1(l_remplaçants, c_eq1 + 1); fdm.EcrireCellule(Program.eq_domicile.remplaçants[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_domicile.remplaçants[i].GetNumber(), equiv_A1_numero); l_remplaçants++; } //Extérieur l_remplaçants -= 7; for (UInt16 i = 0; i < 7; i++) { equiv_A1_nom = fdm.AdresseCellTypeA1(l_remplaçants, c_eq2); equiv_A1_numero = fdm.AdresseCellTypeA1(l_remplaçants, c_eq1 + 1); fdm.EcrireCellule(Program.eq_exterieur.remplaçants[i].GetName(), equiv_A1_nom); fdm.EcrireCellule(Program.eq_exterieur.remplaçants[i].GetNumber(), equiv_A1_numero); l_remplaçants++; } //Actions durant le match fdm.ChangerDeFeuilleActive("Feuil2"); foreach (System.Windows.Forms.ListViewItem action in liste_actions.Items) { //Les actions commencent dans l'Excel à la ligne spécifiée dans ligne_actions (attribut). ligne_action[0] = action.Text + "ème"; //Minute ligne_action[1] = PhraseAction(action); //Phrase descriptive fdm.EcrireLigne(ligne_action, index_actions); //Ecriture de la ligne complète minute + action fdm.SelectionRange(index_actions, 1, 1, 2); //Sélection des 2 cellules pour changer leur mise en forme fdm.CouleurFondRange(action.ForeColor); //Met le fond des cellules sélectionnées à la couleur du texte présent dans l'élément de la ListView des actions index_actions++; } //Affichage de l'Excel final sous l'application Excel elle-même fdm.AfficherXL(); }