Import Error From Excel

Floyd_ChanFloyd_Chan Member Posts: 9
edited 2000-03-07 in Navision Financials
I am reading a column of data directly, one cell at a time, from Excel into Navision using code similar to this:

intRow := 1;
WHILE FORMAT(xlSheet.Range('A' + FORMAT(intRow)).Value) <> '' DO BEGIN
....
....
//process stuff in this loop
//and write to Navision tables
....
intRow := intRow + 1;
END

My intention is for the code to move down column A until the first blank cell is hit, then stop. However, running this code returns an error message when then blank cell is hit and C/SIDE tries to evalute the WHILE statement:

"This message is for C/AL programmers:

This data type is not supported by C/SIDE. You can access data of
any of the following data types:

VT_VOID, VT_I2, VT_I4, VT_R4, VT_R8, VT_CY, VT_DATE, VT_BSTR and VT_BOOL"

It seems that C/SIDE doesn't like the null value returned from Excel. Is there a way around this, or is there a better way to detect the Excel EOF?


Floyd Chan, NCSD
Charon Systems Inc.

Comments

  • Luc_VanDyckLuc_VanDyck Member, Moderator, Administrator Posts: 3,633
    Use this to read cells (even if they are empty):

    IF (xlSheet.Range(Cell).HasFormula) THEN
    CellValue := FORMAT(xlSheet.Range(Cell).Value)
    ELSE
    CellValue := FORMAT(xlSheet.Range(Cell).Text);
    No support using PM or e-mail - Please use this forum. BC TechDays 2024: 13 & 14 June 2024, Antwerp (Belgium)
  • Floyd_ChanFloyd_Chan Member Posts: 9
    Thanks, that worked.

    Along the same lines, what is the best way to detect the end of a list of tasks that I am importing from MS Project 98 into Navision using C/AL programming?

    Anyone?
Sign In or Register to comment.