加入以下Vbscript脚本:
dim xlApp,xlBook,xlSheet
dim i
Set xlApp = CreateObject("Excel.Application")
xlApp.DisplayAlerts = False
Set xlBook = xlApp.Workbooks.add
i=1
do while i<=10
Set xlSheet = xlBook.Worksheets(1)
xlSheet.Delete
i=i+1
loop

xlApp.Visible=true

set xlApp = nothing
set xlBook= nothing
set xlSheet = nothing

解决方案 »

  1.   

    procedure ExportDatabaseToExcel(connect: TADOConnection; FileName: string);
    var
        XlsApp, XlsWorkbook: OleVariant;
        TableList: TStrings;
        i: integer;
        BCount: integer;  //记录excel文件中原有的空sheets的个数
        AdoTAble: TAdoTAble;
    begin
        connect.Connected:= True;    XlsApp  :=  Createoleobject('Excel.Application');
        XlsWorkbook:= XLsApp.Workbooks.Add;    BCount:= XLsApp.WorkSheets.Count;    TableList:= TStringList.Create;
        AdoTAble:= TAdoTAble.Create(nil);
        try
          AdoTAble.Connection:= connect;
          connect.GetTableNames(TableList);
          for i:=0 to TableList.count-1 do
          begin
            AdoTAble.Close;
            ADOTable.TableName:= TableList[i];
            AdoTAble.Open;
            ExportDataSetToExcel(XlsApp, AdoTAble);
          end;
        finally
          TableList.Free;
          AdoTAble.Free;
        end;    // delete blank sheet
        XLsApp.DisplayAlerts:= False;
        for i:= BCount downto 1 do
          XLsApp.WorkSheets[i].Delete;
        XLsApp.DisplayAlerts:= True;    XlsWorkbook.SaveAs(FileName);
          //XlsApp.Visible:= True;
        XlsApp.Quit;
    end;//注释部分为删除已有的多余的sheet