| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 
 | package fr.gui.metier;
 
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Map;
 
import jxl.Cell;
import jxl.Workbook;
import jxl.format.Colour;
import jxl.format.UnderlineStyle;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
 
public class CreationFichierExcel {
 
	Workbook refWorkbook;
	InputStream xlsRefStream;
	WritableWorkbook outWorkbook;
 
	/**
         * charge le fichier excel a modifier
         * 
         * @param fichierExcel
         * @return
         * @throws Exception
         */
	public Workbook chargementModele(File fichierExcel) throws Exception {
		try {
			// Chargement du fichier "modèle"
			this.xlsRefStream = new FileInputStream(fichierExcel);
			this.refWorkbook = Workbook.getWorkbook(this.xlsRefStream);
		} catch (Exception e) {
			throw new Exception("fichier modèle introuvable ! ", e.getCause());
		}
		return this.refWorkbook;
	}
 
	/**
         * Crée du fichier de sortie
         * 
         * @param fichierExcelSortie
         * @param refWorkbook
         * @return
         * @throws Exception
         */
	public WritableWorkbook creationFichierExcelSortie(File fichierExcelSortie, Workbook refWorkbook)
			throws Exception {
		try {
			this.outWorkbook = Workbook.createWorkbook(fichierExcelSortie, refWorkbook);
		} catch (IOException e) {
			throw new Exception("création du fichier excel de sortie impossible", e.getCause());
		}
		return this.outWorkbook;
	}
 
	/**
         * Méthode de récupération du contenu de l'onglet Excel
         * 
         * @param numeroOnglet
         * @param outWorkbook
         * @param numeroColonneRef
         * @param rows
         * @param resultatProduitPresentDansLesDeuxExcels
         */
	public void recupereOngletExcelCourant(Integer numeroOnglet, WritableWorkbook outWorkbook,
			Integer numeroColonneRef, Map<String, String> resultatProduitPresentDansLesDeuxExcels) {
 
		System.out.println("appel de la methode recuperer onglet Excel courant ! ");
		// Récupération de l'onglet courant (le premier onglet)
		WritableSheet out = outWorkbook.getSheet(numeroOnglet);
 
		WritableCellFormat formatGreen = new WritableCellFormat(
				new WritableFont(WritableFont.ARIAL, WritableFont.DEFAULT_POINT_SIZE, WritableFont.NO_BOLD, false,UnderlineStyle.NO_UNDERLINE, Colour.GREEN));
		Label label = new Label(0, 0, "un texte en vert", formatGreen);
 
		for (int i = 0; i < resultatProduitPresentDansLesDeuxExcels.size(); i++) {
			Cell cellule = out.getCell(numeroColonneRef, i); // cols,
																		// rows
			if (resultatProduitPresentDansLesDeuxExcels.containsKey(cellule.getContents())) {
				String celluleRecup = cellule.getContents();
				System.out.println("cellule récupérée : " + celluleRecup);
				out.setColumnView(numeroColonneRef, i, formatGreen);
 
			}
		}
 
		System.out.println("fin du traitement ");
		// Toutes les cellules sont remplies :
		// Sauvegarde le fichier
		try {
			outWorkbook.write();
			outWorkbook.close();
		} catch (IOException | WriteException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
} | 
Partager