[ metuljcek @ 29.06.2007. 10:12 ] @
Radim web aplikaciju u vs2003 i frameworku 1.1.
Imam excel fajl sa makroima koji trebam
napuniti sa podacima iz baze, spasiti na
neku predefinisanu lokaciju i otvoriti snimljeni excel sa nove lokacije.

Kada uradim spasavanje, dobijem sljedecu gresku:

System.Runtime.InteropServices.COMException (0x800A03EC): Exception from HRESULT: 0x800A03EC.
at Excel._Worksheet.SaveAs(String Filename, Object FileFormat, Object Password, Object WriteResPassword, Object
ReadOnlyRecommended, Object CreateBackup, Object AddToMru, Object TextCodepage, Object TextVisualLayout)


Kod je sljedeci:


Dim sqlUpit As String
Dim ds As New System.Data.DataSet
Dim cn As New System.Data.OleDb.OleDbConnection(sqlCon)
Dim ad As New System.Data.OleDb.OleDbDataAdapter
Dim oDRow As System.Data.DataRow


Dim oExcel As New Excel.Application
Dim oBooks As Excel.Workbooks, oBook As Excel.Workbook
Dim oSheets As Excel.Sheets, oSheet As Excel.Worksheet

Dim oCells As Excel.Range

Dim sFile As String, sTemplate As String

oExcel.DisplayAlerts = False
oExcel.Visible = False

'Start a new workbook

oBooks = oExcel.Workbooks
oBooks.Open(File1)

oBook = oBooks.Item(1)

oSheets = oBook.Worksheets

oSheet = CType(oSheets.Item(1), Excel.Worksheet)

oSheet.Name = "First Sheet"

oCells = oSheet.Cells

' -----------------------------
' ovdje radim upis u excel cell(red,kolona)
' -----------------------------
Try



'ova linija uzrokuje GRESKU!!!!
oSheet.SaveAs(File2)
Catch ex As Exception
oBook.Close()

oExcel.Quit()

ReleaseComObject(oCells) : ReleaseComObject(oSheet)

ReleaseComObject(oSheets) : ReleaseComObject(oBook)

ReleaseComObject(oBooks) : ReleaseComObject(oExcel)

oExcel = Nothing : oBooks = Nothing : oBook = Nothing

oSheets = Nothing : oSheet = Nothing : oCells = Nothing
Exit Sub
End Try



oBook.Close()




oExcel.Quit()

ReleaseComObject(oCells) : ReleaseComObject(oSheet)

ReleaseComObject(oSheets) : ReleaseComObject(oBook)

ReleaseComObject(oBooks) : ReleaseComObject(oExcel)

oExcel = Nothing : oBooks = Nothing : oBook = Nothing

oSheets = Nothing : oSheet = Nothing : oCells = Nothing

System.GC.Collect()


oExcel.Visible = True : oExcel.DisplayAlerts = True
Response.Redirect(File2)

Moze li mi neko reci da li je uopce moguce uraditi ovo sto zelim i ako jeste, na koji nacin, odnosno u cemu pravim gresku?
[ dusty @ 29.06.2007. 10:31 ] @
Koja ti je putanja, tj. da li koristis relativnu ili apsolutnu putanju ? Proveri prava pristupa tom folderu, jer je vrlo lako moguce da nemas prava za pisanje.
[ metuljcek @ 29.06.2007. 10:55 ] @
Lokacija je apsolutna tipa:
file1="c:\eks\template\file1.xls"

Zelim ga spasiti na drugu lokaciju pod drugim imenom:
file2="c:\eks\file2.xls"

Pokusala sam otvoriti neki prazan excel fajl u kojem nema makroa sa lokacije file1, upisati u njega podatke i spasiti ga na lokaciju file2.
To je islo bez problema.
Ovaj sa makroima mi stvara iz nekog razloga problem.
Pretpostavljam da je do makroa, ali nisam sigurna...