C# AutoFit函数不在excel中格式化单元格

C# AutoFit函数不在excel中格式化单元格,c#,excel,interop,format,cell,C#,Excel,Interop,Format,Cell,为什么不起作用?具有正确的范围,但仍未形成单元格 Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application(); excel.Workbooks.Add(); Microsoft.Office.Interop.Excel._Worksheet workSheet = excel.ActiveSheet;

为什么不起作用?具有正确的范围,但仍未形成单元格

        Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
        excel.Workbooks.Add();
        Microsoft.Office.Interop.Excel._Worksheet workSheet = excel.ActiveSheet;
        try
        {
            workSheet.Cells[1, "A"] = "Number #";
            workSheet.Cells[1, "B"] = "Firstname";
            workSheet.Cells[1, "C"] = "Lastname";
            workSheet.Cells[1, "D"] = "Email";
            workSheet.Cells[1, "E"] = "Mobile";
            // ------------------------------------------------
            // Populate sheet with some real data from list
            // ------------------------------------------------
            int row = 2; // start row (in row 1 are header cells)
            foreach (var hmn in humen)
            {
                workSheet.Cells[row, "A"] = hmn.Number;
                workSheet.Cells[row, "B"] = hmn.FirstName;
                workSheet.Cells[row, "C"] = hmn.LastName;
                workSheet.Cells[row, "D"] = hmn.Email;
                workSheet.Cells[row, "E"] = hmn.Mobile;
                row++;
            }

            workSheet.Range["A1", "E" + humen.Count].AutoFormat(Microsoft.Office.Interop.Excel.XlRangeAutoFormat.xlRangeAutoFormatClassic1);

            workSheet.Range["A2", "E" + humen.Count].EntireColumn.AutoFit();

            string fileName = string.Format(@"{0}\Resumes_{1}_Data{2}.xlsx", Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory), DateTime.Now.ToString("YYYY-MM-dd"), Guid.NewGuid().ToString().Substring(0, 4));

            workSheet.SaveAs(fileName);

这样做不好吗?

我认为当您选择了多个列时,您不能调用entireclumn.AutoFit。您是否尝试过在该范围内的每一列中循环并自动调整每一列?是否在所选范围内合并了单元格@chancea:AutoFit适用于多列。@我看,多个范围都可以,为什么我一直在循环?但是合并的单元格可能会弄糟这一切。你有没有试着让Excel和文档都可见?有时事情只有在可见的情况下才起作用,而且会帮助您看到发生了什么。@stenci不,没有合并的单元格。不,我还没有试过用visible。这总是错误的。
 workSheet.Range["A2", "E" + humen.Count].EntireColumn.AutoFit();