lucausa75
18-11-2007, 17:22
Salve ragazzi,
ho realizzato un programmino in VB6 che mi permette di aprire e visualizzare su una griglia alcuni file excel da me creati con delle caratteristiche particolari.
Nella procedura sottostante ho voluto inserire una Common Dialog Box tramite la quale decido di volta in volta il file da aprire.
Ovviamente ho inserito delle stringhe di codice per la gestione degli errori però ho un problema; infatti col codice sottostante se apro un file excel con caratteristiche diverse mi viene visualizzata la msgbox sottostante (vedi codice in grassetto) (Fig. 1) però la stessa mi compare anche se apro il file corretto dopo che il contenuto viene visualizzato sulla griglia (Fig. 2)
Mi aiutate a sistemare la gestione degli errori in modo che la msgbox mi si visualizzi solo se scelgo il file errato?
Grazie per l'aiuto
Fig. 1
http://img138.imageshack.us/img138/5945/fig1yt7.jpg (http://imageshack.us)
Fig. 2
http://img257.imageshack.us/img257/8748/fig2qf7fq1.jpg (http://imageshack.us)
Private Sub cmdApri_Click()
On Error GoTo OpenError: 'Stops errors, like opening a false file path
With cdlBox
.DialogTitle = "Apertura File...."
.CancelError = False
.FileName = "*.xls"
.Filter = "Tutti i file (*.xls)|*.xls"
.InitDir = App.Path
.ShowOpen
If UCase(.FileName) = "*.XLS" Then Exit Sub
lblPercorso = .FileName
lblNomeFile = Mid(lblPercorso, Len(lblPercorso) - 19, 16)
End With
DataAgente = Right(lblNomeFile, 8)
DataAgente = Replace(DataAgente, "_", "\")
' DataAgente = CDate(DataAgente)
lblTitolo = "Agent Activity: " & DataAgente
Set xlApp = Excel.Application
Set xlBook = xlApp.Workbooks.Open(lblPercorso)
Set xlSheet = xlBook.Worksheets("Summary_report")
xlApp.Visible = False
xlSheet.Activate
Carica_Griglia Dtgrd
xlBook.Close (True) '<--- chiudi il foglio di lavoro salvando (true) o non salvando (False)
xlApp.Quit '<--- chiudi l'applicazione excel
'annienta le variabili utilizzate.
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
OpenError:
MsgBox "Error during opening file"
lblTitolo = " Agent Activity"
lblNomeFile = ""
Exit Sub
End Sub
ho realizzato un programmino in VB6 che mi permette di aprire e visualizzare su una griglia alcuni file excel da me creati con delle caratteristiche particolari.
Nella procedura sottostante ho voluto inserire una Common Dialog Box tramite la quale decido di volta in volta il file da aprire.
Ovviamente ho inserito delle stringhe di codice per la gestione degli errori però ho un problema; infatti col codice sottostante se apro un file excel con caratteristiche diverse mi viene visualizzata la msgbox sottostante (vedi codice in grassetto) (Fig. 1) però la stessa mi compare anche se apro il file corretto dopo che il contenuto viene visualizzato sulla griglia (Fig. 2)
Mi aiutate a sistemare la gestione degli errori in modo che la msgbox mi si visualizzi solo se scelgo il file errato?
Grazie per l'aiuto
Fig. 1
http://img138.imageshack.us/img138/5945/fig1yt7.jpg (http://imageshack.us)
Fig. 2
http://img257.imageshack.us/img257/8748/fig2qf7fq1.jpg (http://imageshack.us)
Private Sub cmdApri_Click()
On Error GoTo OpenError: 'Stops errors, like opening a false file path
With cdlBox
.DialogTitle = "Apertura File...."
.CancelError = False
.FileName = "*.xls"
.Filter = "Tutti i file (*.xls)|*.xls"
.InitDir = App.Path
.ShowOpen
If UCase(.FileName) = "*.XLS" Then Exit Sub
lblPercorso = .FileName
lblNomeFile = Mid(lblPercorso, Len(lblPercorso) - 19, 16)
End With
DataAgente = Right(lblNomeFile, 8)
DataAgente = Replace(DataAgente, "_", "\")
' DataAgente = CDate(DataAgente)
lblTitolo = "Agent Activity: " & DataAgente
Set xlApp = Excel.Application
Set xlBook = xlApp.Workbooks.Open(lblPercorso)
Set xlSheet = xlBook.Worksheets("Summary_report")
xlApp.Visible = False
xlSheet.Activate
Carica_Griglia Dtgrd
xlBook.Close (True) '<--- chiudi il foglio di lavoro salvando (true) o non salvando (False)
xlApp.Quit '<--- chiudi l'applicazione excel
'annienta le variabili utilizzate.
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
OpenError:
MsgBox "Error during opening file"
lblTitolo = " Agent Activity"
lblNomeFile = ""
Exit Sub
End Sub