C#读写excel文件时,怎么改变字体和背景色

gohands 2008-05-05 10:33:24
如题,如何设置cell的颜色和字体!
...全文
857 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
liaoning2 2009-02-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 crazyPG 的回复:]
工具-选项-字体顔色,别告诉我你找不到,那我就无语了
[/Quote]

SB
lwp850210 2008-05-06
  • 打赏
  • 举报
回复
//合并
excelRangeParm.Merge(Missing.Value);

//粗体设置
excelRangeParm.Font.Bold = true;

//字体大小设置
excelRangeParm.Font.Size = 12;

//水平对齐设置
excelRangeParm.HorizontalAlignment = Excel.XlHAlign.xlHAlignCenter;

//垂直对齐设置
excelRangeParm.VerticalAlignment = Excel.XlVAlign.xlVAlignCenter;

//公式设置
excelRangeParm.FormulaR1C1 = 公式;

//列宽设置
excelRange.ColumnWidth = 宽度;

//行高
excelRange.RowHeight = 行高;



//设置列格式
Excel.Range myrange=mysheet.get_Range(mysheet.Cells[1,1],mysheet.Cells[5,1]);
myrange.NumberFormatLocal="@";//文本格式

//设置第10行为红色
mysheet.get_Range((Excel.Range)mysheet.Cells[10,1],(Excel.Range)mysheet.Cells[10,200]).Select();
mysheet.get_Range((Excel.Range)mysheet.Cells[10,1],(Excel.Range)mysheet.Cells[10,200]).Interior.ColorIndex=3;

wudi626 2008-05-06
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ydsunny 的回复:]
操作Excel时,最好通过Range对象来操作某部分单元格,可通过Range.Font.Size和Range.Font.ColorIndex属性设置相关文字的大小和颜色:

C# code
range = objSheet.get_Range(objSheet.Cells[1, 1], objSheet.Cells[1, thisCell]);
((Excel.Range)objSheet.Rows[1,Miss]).RowHeight = 20;
range.Value = "总仓和代管仓汇总表";
range.Font.Bold = true;
range.MergeCells = …
[/Quote]

就是这个,和操作word的字体格式方法差不多
朝圆夜不圆 2008-05-06
  • 打赏
  • 举报
回复
个人觉得不错的方法就是在EXCEL中录制宏 然后参考VBA代码 很想C#利用的 如果哪位高人有好办法可以说出来
尤其是不知道颜色index时比较好用
九章落地 2008-05-06
  • 打赏
  • 举报
回复
操作Excel时,最好通过Range对象来操作某部分单元格,可通过Range.Font.Size和Range.Font.ColorIndex属性设置相关文字的大小和颜色:

range = objSheet.get_Range(objSheet.Cells[1, 1], objSheet.Cells[1, thisCell]);
((Excel.Range)objSheet.Rows[1,Miss]).RowHeight = 20;
range.Value = "总仓和代管仓汇总表";
range.Font.Bold = true;
range.MergeCells = true;
range.Font.ColorIndex = 5;
range.Font.Size = 20;
gohands 2008-05-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 crazyPG 的回复:]
工具-选项-字体顔色,别告诉我你找不到,那我就无语了
[/Quote]
不是直接操作excel,而是使用C#程序生成报表的!
它的cell对象里头只设置值,单元的属性不知道怎么设!
JustLovePro 2008-05-06
  • 打赏
  • 举报
回复
o
changjiangzhibin 2008-05-06
  • 打赏
  • 举报
回复

//LZ参考一下
using MSExcel = Microsoft.Office.Interop.Excel;

using System.IO;

using System.Reflection;

class Program

{

static void Main(string[] args)

{

string path;

MSExcel.Application excelApp;

MSExcel.Workbook excelDoc;

path = @"d:\test.xlsx";

excelApp = new MSExcel.ApplicationClass();

if(File.Exists(path))

{

File.Delete(path);

}

Object nothing = Missing.Value;

excelDoc = excelApp.Workbooks.Add(nothing);

MSExcel.Worksheet ws = (MSExcel.Worksheet)excelDoc.Sheet[1];

MSExcel.Range r;

r = ws.get_Range("A1","A1");

r.Value2 = "3";

r = ws.get_Range("A2","A2");

r.Value2 = "5.7";

r = ws.get_Range("A3","A3");

r.Value2 = "4.8";

r = ws.get_Range("A4","A4");

r.Value2 = "9.2";

r = ws.get_Range("A5","A5");

r.Value2 = "6.4";

excelDoc.Charts.Add(nothing,nothing,nothing,nothing);

excelDoc.ActiveChart.ChartType = MSExcel.XlChartType.xlColumnClustered;

excelDoc.ActiveChart.SetSourceData(ws.get_Range("A1","A5"),MSExcel.XlRowCol.xlColumns);

excelDoc.ActiveChart.Location(MSExcel.XlChartLocation.xlLocationAsObject,"sheet1");

excelDoc.ActiveChart.HasTitle = true;

excelDoc.ActiveChart.ChartTitle.Text = "创建图表";

excelDoc.ActiveChart.hasDataTable = false;

object format = MSExcel.XlFileFormat.xlWorkbookDefault;

excelDoc.SaveAs(path,format,nothing,nothing,nothing,nothing,

MSExcel.XlSaveAsAccessMode.xlExclusive,nothing,nothing,nothing,nothing,nothing);

excelDoc.Close(nothing,nothing,nothing);

excelApp.Quit();

}

}


crazyPG 2008-05-06
  • 打赏
  • 举报
回复
工具-选项-字体顔色,别告诉我你找不到,那我就无语了

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧