Bordure de cellule excel [Résolu]

cs_Marquo 31 Messages postés vendredi 22 août 2003Date d'inscription 14 octobre 2005 Dernière intervention - 22 août 2005 à 11:14 - Dernière réponse : delphi2004 6 Messages postés jeudi 26 février 2004Date d'inscription 29 décembre 2008 Dernière intervention
- 31 mars 2010 à 22:16
Bonjour,

je dois faire une application Excel avec C# mais avant de me lancer j'aimerais savoir d'une part si il est possible de tracer des bordures pour les cellules et d'autre part si il est possible de dupliquer une ligne ?

Merci
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 22 août 2005 à 11:45
3
Merci
la meilleur solution... c'est d'enregistrer une macro... et ensuite tu regardes le code qu'elle a généré. c'est bête, mais c'est la meilleur solution que je connaisse.


<HR>
Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate

Merci sebmafate 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de sebmafate
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 22 août 2005 à 11:30
0
Merci
tout ce que tu fais "à la main" dans excel est possible avec C#.

ca répond à ta question ?


<HR>
Sébastien FERRAND

Blog : http://blogs.developpeur.org/sebmafate
Commenter la réponse de sebmafate
cs_Marquo 31 Messages postés vendredi 22 août 2003Date d'inscription 14 octobre 2005 Dernière intervention - 22 août 2005 à 11:40
0
Merci
Oui merci mais est-ce que tu connaitrais les methodes à utiliser ds ces 2 cas là ?
Commenter la réponse de cs_Marquo
cs_Marquo 31 Messages postés vendredi 22 août 2003Date d'inscription 14 octobre 2005 Dernière intervention - 22 août 2005 à 11:46
0
Merci
Ok merci beaucoup
Commenter la réponse de cs_Marquo
lm86 10 Messages postés jeudi 8 juin 2006Date d'inscription 27 septembre 2006 Dernière intervention - 13 juil. 2006 à 11:07
0
Merci
Salut.

Je reviens rapidement sur ce sujet. J'ai utilisé ta technique Sebmafate mais le problème, c'est que pour pour pouvoir, par exemple, mettre une bordure sur le coté droit d'une cellule, il faut utilisé "xlEdgeRight" et je ne sais pas où trouver cette attribut.

Voila. Si quelqu'un a une idée, ça m'arangerai en fait!!!
Commenter la réponse de lm86
cs_Cathbad 2 Messages postés jeudi 20 juillet 2006Date d'inscription 24 juillet 2006 Dernière intervention - 24 juil. 2006 à 14:39
0
Merci
Iop, J'ai le même problème que toi mais sous VB6 enfin je dois utiliser la constante xledgeright. Comme toute constante celle ci représente une valeur. Donc la solution c'est de faire un msgbox xledgeright (sous vba) et de zieuter le résultat. Ensuite tu n'as plus qu'a remplacer tes xledgeright /bottom /top .. etc par les valeurs que tu obtiendras.
Commenter la réponse de cs_Cathbad
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 24 juil. 2006 à 15:11
0
Merci
Vous pouvez toujours aller jeter un oeil sur ce poste.
La constante semble valoir 10.

VC# forever
Commenter la réponse de cs_Bidou
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 24 juil. 2006 à 22:36
0
Merci
Sinon la doc ça marche pas mal aussi ^^ : [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbaxl11/html/xlhowConstants_HV01049962.asp Microsoft Excel Constants [Excel 2003 VBA Language Reference]]

/*
coq
MVP Visual C#
CoqBlog
*/
Commenter la réponse de cs_coq
delphi2004 6 Messages postés jeudi 26 février 2004Date d'inscription 29 décembre 2008 Dernière intervention - 31 mars 2010 à 22:16
0
Merci
krimou
HiLook into this code this might help u out.Add excel reference to the project.C# codeExcel.Application oXL = new Excel.Application(); // The excel application.


Excel.Workbook theWorkbook; // The workbook in the excel application.


Excel.Worksheet worksheet; // The worksheet in the workbook.


// Set the Excel application to visible. This is not necessary
// but makes it easier during debugging.





oXL.Visible = true;



// Open the Excel template and get the workbook in the Excel file.




theWorkbook = oXL.Workbooks.Add(Type.Missing);


if ( theWorkbook.Worksheets.Count > 0)


{


// Select the sheet that the report data will be placed on.


worksheet = (Excel.Worksheet)theWorkbook.Sheets[1];


// Activate the worksheet so that the data will show up


worksheet.Activate();


// Apply the formatting necessary for the report.


Range rg = worksheet.get_Range("A1","E1");


rg.Select();
//boldrg.Font.Bold = true;
// font facerg.Font.Name = "Arial";
//font sizerg.Font.Size = 8;
// text wraprg.WrapText = true;
// cell allignment









rg.HorizontalAlignment = Excel.Constants.xlCenter;
// color indexrg.Interior.ColorIndex = 6;
// font weightrg.Borders.Weight = 3;
// Border Line stylerg.Borders.LineStyle = Excel.Constants.xlSolid;
// row heightrg.Cells.RowHeight = 38;












rg = worksheet.get_Range("A1",Type.Missing);


rg.Cells.ColumnWidth = 7;


rg.Value2 = "Ticker";


rg = worksheet.get_Range("B1",Type.Missing);


rg.Cells.ColumnWidth = 11;


rg.Value2 = "Purchase Date";







rg = worksheet.get_Range("C1",Type.Missing);



rg.Cells.ColumnWidth = 6.5;



rg.Value2 = "Shares";







rg = worksheet.get_Range("D1",Type.Missing);



rg.Cells.ColumnWidth = 10;



rg.Value2 = "Purchase Price";







rg = worksheet.get_Range("E1",Type.Missing);



rg.Cells.ColumnWidth = 11;



rg.Value2 = "Total";



int RowCounter = 2;



double TotalValue = 0;


// Get the data from the dataset created above
// and populate the spreadsheet.





DataRow[] rpt = ACTable.Select("Ticker <> ''","Ticker ASC");



foreach(DataRow dr in rpt)



{



// Format each row of data for the report.


rg = (Excel.Range)worksheet.Rows[RowCounter, Type.Missing];


rg.HorizontalAlignment = Excel.Constants.xlCenter;


rg.Cells.RowHeight = 12;


rg.Font.Name = "Aerial";


rg.Font.Size = 8;



// Custom Cell Formatting

// Purchase Date


// Format the Purchase Date cell for a


// date time. The dataset table will return


// a date with the time.



rg = (Excel.Range)worksheet.Cells[RowCounter,2];
rg.NumberFormat = "MM/DD/YYYY";





// Purchase Price
// Format the purchase price to currency.





rg = (Excel.Range)worksheet.Cells[RowCounter,4];
rg.NumberFormat = "$0.00";





// Drop the data into the spreadsheet.



worksheet.Cells[RowCounter,1] = dr["Ticker"].ToString();


worksheet.Cells[RowCounter,2] = dr["PurchaseDate"].ToString();


worksheet.Cells[RowCounter,3] = dr["Shares"].ToString();


worksheet.Cells[RowCounter,4] = dr["PurchasePrice"].ToString();


// This is just to show that the formatting can be
// done with .NET instead of using the NumberFormat.






TotalValue = Convert.ToDouble(dr["Total"].ToString());


worksheet.Cells[RowCounter,5] = TotalValue.ToString("C");


RowCounter++;


}



// Save the workbook.
FileInfo f = new FileInfo(SavePath + @"\MyReport.xls");


if(f.Exists)


f.Delete(); // delete the file if it already exist.



oXL.ActiveWorkbook.SaveAs(SavePath + @"\MyReport",


Excel.XlFileFormat.xlWorkbookNormal, Type.Missing, Type.Missing,


Type.Missing, Type.Missing, Excel.XlSaveAsAccessMode.xlNoChange ,


Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);


oXL.Visible = false;



theWorkbook.Close(null,null,null);


oXL.Workbooks.Close();


oXL.Application.Quit();


oXL.Quit();



System.Runtime.InteropServices.Marshal.ReleaseComObject(worksheet);


System.Runtime.InteropServices.Marshal.ReleaseComObject(theWorkbook);


System.Runtime.InteropServices.Marshal.ReleaseComObject(oXL);


worksheet = null;


theWorkbook = null;


oXL = null;



return true;---------------
Commenter la réponse de delphi2004

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.