1 2 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
| OleDbConnection oConn;
OleDbCommand oCmd;
object oMissing= System.Reflection.Missing.Value;
Excel.Application appXls = new Excel.ApplicationClass();
appXls.Visible = false;
StatusBarAccess.Executing = "Exportation de la liste des devis vers Excel en cours...";
//Excel._Workbook Classeur = appXls.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
string filename = @"c:\VlvDevis\Export.xlt";
Excel._Workbook Classeur = appXls.Workbooks.Open(filename, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing);
Excel._Worksheet Feuille = (Excel._Worksheet) Classeur.ActiveSheet;
oConn=new System.Data.OleDb.OleDbConnection();
oConn.ConnectionString=MainFrame.strConn;
oCmd=new System.Data.OleDb.OleDbCommand();
oCmd.Connection=oConn;
oCmd.CommandText=strCmd;
oConn.Open();
OleDbDataReader dr = oCmd.ExecuteReader();
int nLine=5;
int DernierMontant = -999999;
string DerniereAffaire = "DeniereAffaire";
while (dr.Read())
{
if (Convert.ToInt32(dr["Montant"]) >= DernierMontant * 0.9 && Convert.ToInt32(dr["Montant"]) <= DernierMontant * 1.1 && dr["Affaire"].ToString() == DerniereAffaire)
{
Feuille.Cells[nLine-1, 4] = "[...]";
}
else
{
DerniereAffaire = dr["Affaire"].ToString();
DernierMontant = Convert.ToInt32(dr["Montant"]);
string Content = "";
for (int nCol=0; nCol < 8; nCol++) //dr.FieldCount
{
Content = dr[nCol].ToString();
if (nCol == 3)
{
Content = Content.Replace("Monsieur", "M");
Content = Content.Replace("Madame", "Mme");
if (Content.Length > 0)
Content = Content.Remove(0, 1);
}
if (nCol == 6)
{
Content = Content.Substring(0, Content.Length-9);
}
if (Content != "")
Feuille.Cells[nLine, nCol+1] = Content;
}
nLine++;
}
}
oConn.Close();
Feuille.Columns.AutoFit();
Title(Feuille, "Liste de devis sélectionnés");
string Tmp = "Critères de sélection: ";
foreach (string critere in MainFrame.Criteres)
{
if (critere != "Aucun critère de sélection.")
Tmp += critere + ", ";
}
Title(Feuille, "Liste des devis sélectionnés");
Description(Feuille, Tmp);
StatusBarAccess.Executing = "Exportation de la liste des devis vers Excel terminée";
appXls.Visible = true; |
Partager