Oct 6, 2016

How to : Get excel rows count through X++ (X++에서 엑셀 시트의 열의 총 카운터를 구하는 방법)

static int get_ExcelRowCount(FilenameOpen     _FilenameOpen)
{
    int         _ExcelCount;
    #define.Star('*')
    #define.ExcelDataRange("=$A:$A")
    SysExcelApplication                     _ExcelApplication;
    SysExcelWorkbooks                       _ExcelWorkbooks;
    SysExcelWorkbook                        _ExcelWorkbook;
    SysExcelWorksheets                      _ExcelWorksheets;
    SysExcelWorksheet                       _ExcelWorksheet;
    SysExcelCells                           _ExcelCells;
    SysExcelRange                           _SysExcelRange;
    _ExcelApplication = SysExcelApplication::construct();
    _ExcelWorkbooks = _ExcelApplication.workbooks();
    try
    {
        _ExcelWorkbooks.open(_FilenameOpen);
    }
    catch (Exception::Error)
    {
        throw error("File not found");
    }
    _ExcelWorkbook      =   _ExcelWorkbooks.item(1);
    _ExcelWorksheets    =   _ExcelWorkbook.worksheets();
    _ExcelWorksheet     =   _ExcelWorksheets.itemFromNum(1);
    _ExcelCells         =   _ExcelWorksheet.cells();
    _SysExcelRange    = _ExcelWorksheet.cells().range(#ExcelDataRange);
    _SysExcelRange = _SysExcelRange.find(#Star, null, #xlFormulas, #xlWhole, #xlByRows, #xlPrevious);
    _ExcelCount = _SysExcelRange.row();
    _ExcelWorkbooks.close();
    _ExcelApplication.quit();
    return _ExcelCount;
}

No comments:

Post a Comment