不同意"有谁共鸣"版主的说法,即使文件处于打开状态,仍然可以修改内容的,只不过打开的方式不一样了,VBS脚本如下:
quote:
On Error Resume Next '#必加,否则GetObject会报错
Dim oExcelFile,oExcel,oWorkBook,oSheet
oExcelFile= "D:\MyFile.xls"
Set oExcel = GetObject(,"Excel.Application") '#试图获取已经打开的EXCEL进程
'MsgBox TypeName(oExcel)
If VarType(oExcel)=vbEmpty Then '#如果未找到EXCEL进程,则由CreateObject新建
Set oExcel = CreateObject("Excel.Application") '#新建EXCEL进程
End If
Set oWorkBook = oExcel.workbooks("MyFile.xls") '#试图获取已经打开的Excel文件
'MsgBox TypeName(oWorkBook)
If VarType(oWorkBook)=vbEmpty Then '#如未找到,则有Open打开Excel文件
Set oWorkBook = oExcel.workbooks.OPen(oExcelFile) '#打开Excel文件
'MsgBox oExcelFile & " Open Succeed!"
End If
Set oSheet = oWorkBook.Sheets("Sheet1")
oSheet.Range("C11") = "TEST STRING"
oWorkBook.Save
楼主可以试试将它"翻译"为C脚本。