Torna al Thread

Public Class claInvitiRevisioni Public Event Terminato() Public parChiamante As frmInvitiRevisioni Dim XlaDati As Object ' Excel.Application <---- Non la dichiaro come Excel.Application, perché crea problemi con .SaveAs con Office2000. Dichiarandola come Object il problmea non si presenta. Comunque ho provato a dichiararla come Excel.Application, ma il problema del processo rimane. Public Sub Chiusura() Try parChiamante.btnEstrapola.Text = parChiamante.cnsEstrapola If Not IsNothing(XlaDati) Then XlaDati.Quit() XlaDati = Nothing End If Catch exc As Exception meErrori.RegistrazioneErrore(Err, exc, True) End Try End Sub Sub Elaborazione() Dim XlwbDatiDestinazione As Object ' Excel.Workbook Dim XlshDatiDestinazione As Object ' Excel.Worksheet Dim strRecord(0, 0) As String <------ Dati che verranno copiati nel foglio Excel. Subisce un redim durante l'esecuzione Try ' Crea l'oggetto applicazione Excel XlaDati = CreateObject("Excel.Application") ' Genera il documento Excel di destinazione XlwbDatiDestinazione = XlaDati.Workbooks.Add ' Crea ed imposta i fogli di destinazione For intContatore = 1 To XlwbDatiDestinazione.Sheets.Count <---- Inizialmente rinominavo 3 fogli, perciò ho lasciato invariato questo ciclo nel caso mi serva rinominare ancora più di un foglio XlshDatiDestinazione = XlwbDatiDestinazione.Worksheets(intContatore) Select Case intContatore Case 1 XlshDatiDestinazione.name = "ELENCO" End Select Next XlshDatiDestinazione = XlwbDatiDestinazione.Worksheets("ELENCO") (...Istruzioni che popolano la matrice strRecord...) XlshDatiDestinazione.range("A1:H" & lngRiga + 1).formulalocal = strRecord XlshDatiDestinazione.range("A1:H1").font.bold = True XlshDatiDestinazione.Columns("A:H").NumberFormat = "@" XlshDatiDestinazione.Columns("A:H").AutoFit() mdlMain.ExcelBordi(XlshDatiDestinazione, Excel.XlBorderWeight.xlThin, "A1", "H" & lngRiga + 1, True, True, True, True, True, True) <---- Procedura che imposta i bordi nell'area A1 H[lngriga]. I vari True e False fanno riferimento ai bordi (sinistro, destro...) mdlMain.ExcelBordi(XlshDatiDestinazione, Excel.XlBorderWeight.xlMedium, "A1", "H1", True, True, True, True) mdlMain.ExcelBordi(XlshDatiDestinazione, Excel.XlBorderWeight.xlMedium, "A1", "H" & lngRiga + 1, True, True, True, True) ' Se il file di destinazione esiste, lo cancella If System.IO.File.Exists(parChiamante.txtFileDestinazione.Text) Then System.IO.File.Delete(parChiamante.txtFileDestinazione.Text) End If ' Salva il file XlwbDatiDestinazione.SaveAs(parChiamante.txtFileDestinazione.Text) Catch exc As Exception meErrori.RegistrazioneErrore(Err, exc, True) Finally XlshDatiDestinazione = Nothing XlwbDatiDestinazione = Nothing Me.Chiusura() RaiseEvent Terminato() End Try End Sub End Class
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5