现做一个小程序:从数据库中取数据,以DBGrid的形式显示,数据很多,分很多屏显示,每一屏都是DbGrid外加一标签为"Excel"的按钮,按钮的作用在于:将DBGrid的数据写入Excel,且保存,所有屏的数据都存在同一个Workbook里的同一个sheet里,每屏之间数据用两个空行分开。
 我用TExcelApplication && TExcelWorkBook && TExcelSheet控件来完成。问题是:保存完第一屏数据后,要保存完第二屏数据,这时将已保存的文件打开,出现“命令不能作用于共享文件,请用”排他“方式打开文件!”的错误提示。(提示是日文的,这是我翻译过来的)。而且这个提示只出现在程序中用到了“merge()"函数的地方,去掉所有的merge()就没事了,可是,我必须用merge().这该怎么办。特请教各位大侠!
  我用的保存Excel文件的函数是:if not fileexists(filename) then
          ExcelWorkbook1.SaveAs(filename {FileName},
                                Null {FileFormat},
                                Null {Password},
                                Null {WriteResPasswrd},
                                Null {ReadOnlyRecommended},
                                Null {CreateBackup},
                                xlReadWrite {AccessMode},
                                Null {ConflicResolution},
                                Null {AddToMru},
                                Null {TextCodepage},
                                Null {TextVisualLayout},
                                0);用的打开Excel文件的函数是:
    filename:='d:\test.xls';
    if(fileexists(filename)) then
 ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Open(
                              filename,
                              EmptyParam,{UpdateLinks}
                              EmptyParam,{ReadOnly}
                              EmptyParam,{Format}
                              EmptyParam,{PassWord}
                              EmptyParam,{WritePassWord}
                              EmptyParam,{IgnoreReadOnlyRecommended}
                              EmptyParam,{Origin}
                              EmptyParam,{Delimiter}
                              EmptyParam,{Editable}
                              EmptyParam,{Notify}
                              EmptyParam,{Converter}
                              EmptyParam,{AddToMru}
                              LCID));     {Lcid}
  
         ...
 请问各位高手:改哪个参数才是以"排他”方式打开,merge()函数跟“排他”关系?
  谢谢各位了!!