c#,Microsoft Interop Excel,更改所选范围的字体样式

标签 c# .net excel-interop font-style

我需要更改Excel工作表中某些单元格的字体样式(字体类型)。 Excel工作表由Microsoft.Office.Interop.Excel生成

我想将 B3 到 B100 范围更改为 Arial 字体类型。 这是我的代码

Microsoft.Office.Interop.Excel._Application app = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel._Workbook workbook = app.Workbooks.Add(Type.Missing);
Microsoft.Office.Interop.Excel._Worksheet worksheet = null;

app.Visible = true;
worksheet = workbook.Sheets["Sheet1"];
worksheet = workbook.ActiveSheet;
worksheet.Name = "Exported from gridview";
worksheet.get_Range("B3", "B100").Cells.Font.FontStyle = "Arial";

for (int i = 1; i < records_datagridview.Columns.Count + 1; i++)
{
   worksheet.Cells[1, i] = records_datagridview.Columns[i - 1].HeaderText;
}

for (int i = 0; i < records_datagridview.Rows.Count; i++)
{
   for (int j = 0; j < records_datagridview.Columns.Count; j++)
   {
      worksheet.Cells[i + 2, j + 1] = records_datagridview.Rows[i].Cells[j].Value.ToString();
   }
}

String file_path = fbd.SelectedPath + "/records_sheet_" + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss") + "_.xlsx";

workbook.SaveAs(file_path, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
                Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive,
                Type.Missing, Type.Missing, Type.Missing, Type.Missing);

app.Quit();

我用过

worksheet.get_Range("B3", "B4").Cells.Font.FontStyle = "Arial";

但是没有效果 谁能帮我解决这个问题

最佳答案

把你的代码改成这样:

worksheet.get_Range("B3", "B4").Cells.Font.Name = "Arial";

提示:在许多情况下,您可以自己回答此类问题:只需录制一个 Excel 宏并查看生成的代码。即使它是 VBA,而不是 C#,您也会经常看到您需要的东西。

关于c#,Microsoft Interop Excel,更改所选范围的字体样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47731117/

相关文章:

.net - 如何使用 SignalR 将事件从 Web Api 项目广播到不同应用程序池上的 MVC 应用程序

.net - mstest 错误 - qtagent32.exe 已停止工作

c# - 从 C# 行为不当在 Excel 中设置单元格样式

c# - Excel 工作簿输入的奇怪错误

c# - ASP.Net Core 1.1 MVC 应用程序中的 401 未经 IdentityServer3 授权

c# - 在 MySQL 的结果中找不到指定的列

c# - 使用数据访问层为 3 层安排 dotnet 核心应用程序

.net - 如何将特定文件扩展名与我的应用程序相关联?

c# - 通过类的反射属性获取,而不是从继承类获取

c# - 安装/删除 2013 测试版后损坏的 Excel Interop COM 程序集