写了个EXCEL和SQL数据导入导出的小程序,用的EXEC master..xp_cmdshell 'bcp......',
由于SQL导出到EXCEL后没有标题,在导出完成后,再把该EXCEL文件打开,添加标题栏,
修改列宽,然后保存,但奇怪的是,保存代码不起作用
如下
procedure TForm1.TryExcel;
var
  xx,excelapp:variant;
begin
  try
    excelapp:=CreateOleObject('Excel.application');
  except
    showmessage('本机没有安装EXCEL!');
  end;
    if combobox1.Text='MarkWins' then
       XX:=excelapp.workbooks.open('\\192.168.0.3\partno\abook.xls');
    if combobox1.Text='SongZe' then
       XX:=excelapp.workbooks.open('\\192.168.0.3\partno\sbook.xls');
    excelapp.sheets[1].activate;
    excelapp.sheets[1].Rows[1].Insert;
    excelapp.sheets[1].cells[1,1].value:='日期';
    excelapp.sheets[1].cells[1,2].value:='单别';
    excelapp.sheets[1].cells[1,3].value:='单号';
    excelapp.sheets[1].cells[1,4].value:='发票号';
    excelapp.sheets[1].cells[1,5].value:='柜号';
    excelapp.sheets[1].cells[1,6].value:='品号';
    excelapp.sheets[1].cells[1,7].value:='单位';
    excelapp.sheets[1].cells[1,8].value:='数量';
    excelapp.sheets[1].cells[1,9].value:='单价';
    excelapp.sheets[1].cells[1,10].value:='汇率';
    EXCELAPP.WORKSHEETS[1].COLUMNS['A'].COLUMNWIDTH :=9;
    EXCELAPP.WORKSHEETS[1].COLUMNS['B'].COLUMNWIDTH :=6;
    EXCELAPP.WORKSHEETS[1].COLUMNS['C'].COLUMNWIDTH :=12;
    EXCELAPP.WORKSHEETS[1].COLUMNS['D'].COLUMNWIDTH :=12;
    EXCELAPP.WORKSHEETS[1].COLUMNS['E'].COLUMNWIDTH :=12;
    EXCELAPP.WORKSHEETS[1].COLUMNS['F'].COLUMNWIDTH :=15;
    EXCELAPP.WORKSHEETS[1].COLUMNS['G'].COLUMNWIDTH :=5;
    EXCELAPP.WORKSHEETS[1].COLUMNS['H'].COLUMNWIDTH :=11;
    EXCELAPP.WORKSHEETS[1].COLUMNS['I'].COLUMNWIDTH :=10;
    EXCELAPP.WORKSHEETS[1].COLUMNS['J'].COLUMNWIDTH :=8;
    XX.save;//下面对话框出现后,如果用户选择NO,则上面添加内容未保存;
            //如用户选择YES,则马上关闭EXCEL,提示是否保存。
    if MessageDlg('资料导出成功,是否要打开编辑?',mtConfirmation,[mbYes,mbNo],0)= mrYes then
      ExcelApp.Visible := True //设置EXCEL窗口为可见
    else
    begin
      xx.close;
      ExcelApp.Quit;
      ExcelApp:=unAssigned;
    end;
end;请不要转贴其他EXCEL资料。