写Excel的问题

我想从C#中的数据写入Excel工作表。
这是可以的,但我不知道如何改变单元格的文字devise(如字体,颜色…)以及如何alignment字母左或右?
我search了网页和书籍,但是没有组织任何信息。
简而言之,我想知道可以改变字体颜色和左alignment的方法…等等。

请在这里find一些你正在寻找的片段。 片段使用Microsoft Office基础库( Microsoft.Office.Interop ),没有EPPlus,没有Componentsource或其他。

有这样的准备工作:

 ... MSExcel.Application excelApp; excelApp = new Microsoft.Office.Interop.Excel.Application(); Workbook workBook; Worksheet sheet; Excel.Range range; ... ... workBook = excelApp.Workbooks.Open(...); sheet = (Worksheet)workBook.ActiveSheet; range = (Excel.Range)sheet.get_Range("A5:C7", Type.Missing); // Example of getting a range object ... 

那么你可以使用这样的对象:

1)将边框边缘设置在一个范围内:

 range.Borders[Excel.XlBordersIndex.xlEdgeBottom].LineStyle = Excel.XlLineStyle.xlContinuous; range.Borders[Excel.XlBordersIndex.xlEdgeBottom].Weight = Excel.XlBorderWeight.xlHairline; 

2)将背景颜色设置为一个范围:

 range.interior.Pattern = Excel.XlPattern.xlPatternSolid; range.interior.PatternColorIndex = Excel.XlColorIndex.xlColorIndexAutomatic; range.interior.ThemeColor = Excel.XlThemeColor.xlThemeColorDark1; range.interior.TintAndShade = -0.249977111117893; // This was captured by macro recording range.interior.PatternTintAndShade = 0; 

3)设置列宽:

 range.ColumnWidth = width; 

4)将水平alignment设置为中心:

 range.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter; 

我build议你把这些片段和谷歌周围,因为你会发现更多:-)

另外一个好的做法是在Excel VBA中将一些活动logging为macros。 然后,再用一些googleing,你应该能够把你看到的术语翻译成C#。 祝你好运!