if file('nhif2.dbf') drop table nhif2 endif if not file('nhif2.dbf') create table nhif2 (fname character(15),sname character(15),; tname character(15)) endif cWorkbook = "d:\examples\plus2019\nhif2.xls" //path required cworkbookSave = "d:\examples\plus2019\nhif2.csv" //path required oExcel = new oleAutoclient("Excel.Application") oExcel.workbooks.open(cWorkbook) oExcel.application.displayalerts = false //oExcel.visible = true //if type( "SetForegroundWindow" ) <> "FP" // extern CLONG SetForegroundWindow( CHANDLE ) user32.dll //endif //SetForegroundWindow( oExcel.Application.Hwnd) oSheet = oExcel.Sheets("APr 2021 NHIF").Select() oExcel.activeWorkbook.saveAs(cWorkbookSave,6) //As .csv file oExcel.activeWorkbook.close() set procedure to :duflp:stringex.cc q = new query() q.sql = "select * from nhif2" q.active = true f = new file() f.open(cWorkbookSave) cRead = f.gets(100000) // Skip record with field names do while not f.eof() cRead = f.gets(100000) aRecord = new stringex(cRead).breakstring(";",true) //check separator in .csv file q.rowset.beginAppend() for n = 1 to aRecord.size q.rowset.fields[n].value = aRecord[n] next q.rowset.save() enddo f.close() q.active = false close procedure :duflp:stringex.cc msgbox('Done')