如何安装柱子?

时间:2013-05-28 09:01:21

标签: c# .net winforms excel

我正在使用C#.net和NetOffice.ExcelApi创建一个excel表。我想使用以下代码自动调整A到G列:

Excel.Workbook xlWorkBook = xlApp.Workbooks.Add();
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets[1];
xlWorkSheet.Columns["A:G"].AutoFit();

我也试过这段代码:

Excel.Workbook xlWorkBook = xlApp.Workbooks.Add();
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets[1];
xlWorkSheet.Columns.AutoFit();

结果仍然是列不适合。

有人可以帮帮我吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

我猜你也可能需要添加行索引。

我正在使用Excel = Microsoft.Office.Interop.Excel;

这样可行:

Excel.Range myRange= xlWorkSheet.get_Range("A1:G10");
myRange.AutoFit();

也许在NetOffice.ExcelApi中有类似范围的东西。 :|

顺便说一句,你有没有使用Microsoft.Office.Interop.Excel的原因?由于标签表示您正在编写Windows窗体应用程序,因此应该没有任何问题。我认为有更多文档可供Microsoft.Office.Interop.Excel。

使用

更新:我在文档中找到了可以帮助您的内容:http://netoffice.codeplex.com/wikipage?title=Excel_Example02

   // setup rows and columns 
   workSheet.Columns[1].AutoFit(); 
   workSheet.Columns[2].ColumnWidth = 25; 
   workSheet.Columns[3].ColumnWidth = 25; 
   workSheet.Columns[4].ColumnWidth = 25; 
   workSheet.Columns[5].ColumnWidth = 25; 
   workSheet.Rows[9].RowHeight = 25; 

您可能想要执行以下操作:

xlWorkSheet.Range("A:G").AutoFit();

或者它确实需要行索引:

xlWorkSheet.Range("A1:G20").AutoFit();

或者您可以逐个设置所有列:

xlWorkSheet.Columns[1].AutoFit(); 
xlWorkSheet.Columns[2].AutoFit(); 

我希望有些东西适合你:)。 但是你的xlWorkSheet.Columns.AutoFit();不起作用很奇怪。您应该检查问题是否在表单中。

答案 1 :(得分:0)

我遇到了同样的问题。

我意识到我在代码写在excel上的文本之前使用了代码myRange.Columns.AutoFit();

请看一下这种情况。