当前位置:编程学习 > C#/ASP.NET >>

关于C#读取Excel的单元格高度

手头没有开发环境,想确认如果想用C#读取Excel的某个单元格高度,是否必须安装Excel软件呢?
仅仅调用Excel的相关dll是否可以做到?
最好能给出代码示例,谢谢
Excel的版本是2010 excel 单元格高度 dll --------------------编程问答-------------------- 不一定要安装,但要用到第三方软件的dll文件,这个文件在开发项目添加引用后,发布后一起打包到bin文件夹下。
三方软件名称:GemBox.Spreadsheet
动态链接库文件:GemBox.Spreadsheet.dll
我们公司就用这个,发布到服务器上时,不需要安装office

using GemBox.Spreadsheet;
........
...
public override void ExportDocumentProcess()
{
    SpreadsheetInfo.SetLicense(BOSUtility.GetGemBoxExcelKey());  -->获取GemBox.Spreadsheet系列号

    xlApp = new ExcelFile();
    xlApp.LoadXls(this.ExportFileAppplicationPath);
    ExcelWorksheet xlWorkSheet = xlApp.Worksheets[0];
    int intTotalCount = DataSource.Count;
    
    int starRows = 5;
    ExcelRow row = xlWorkSheet.Rows[starRows];
    var list = this.DataSource.GroupBy(t => t.IndvCourseName.Trim()).Select(g =>
    {
        return new
        {
            IndvCourseName = g.Key,
            StudentCount = g.Count(),
            Amount = g.Sum(t => t.Price)
        };
    });
    int i = 0;
    foreach (var item in list)
    {
        xlWorkSheet.Cells[starRows, 0].Value = item.IndvCourseName;
        xlWorkSheet.Cells[starRows, 1].Value = item.StudentCount;
        xlWorkSheet.Cells[starRows, 2].Value = "aaaaaaaaaaaaa";        
        xlWorkSheet.Cells[starRows, 3].Value = "bbbbbbbbbbbbbbbbb";
        xlWorkSheet.Cells[starRows, 4].Value = item.Amount;

        if (i < list.Count() - 1)
        {
            xlWorkSheet.Rows[starRows].InsertCopy(1, row);
            starRows++;
        }
        i++;
    }

    xlApp.SaveXls(this.ExportFileAppplicationPath);  -->保存文件
}

public override void ExportDocumentRelease()
{
    releaseObject(xlApp);
}
private void releaseObject(object obj)
{
    try
    {
        System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
        obj = null;
    }
    catch
    {
        obj = null;
    }
    finally
    {
        GC.Collect();
    }
}

--------------------编程问答-------------------- 非常感谢,那是不是说如果不用第三方dll的话,肯定要安装excel了? --------------------编程问答-------------------- Excel软件?你没有office? --------------------编程问答--------------------
引用 3 楼 panlaniloveyou 的回复:
Excel软件?你没有office?


公司的服务器没有Office的License预算呀,不能装
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,