In automazione di Excel, come gestire con garbo errore di formato di file non valido all'apertura di file?

StackOverflow https://stackoverflow.com/questions/390920

  •  23-08-2019
  •  | 
  •  

Domanda

Sto cercando di aprire un file di Microsoft Excel in un programma C # utilizzando il metodo 'excelApp.Workbooks.Open ()'. Si dà il caso, se il formato del file non è valido, questo metodo provoca un finestra di messaggio di errore da visualizzare. Io, comunque, non voglio che; Vorrei gestire questo errore con grazia nel mio codice.

La mia domanda è: come posso fare?

Il metodo di cui sopra non genera alcuna eccezione che posso prendere. Anche se così fosse, non c'è ancora quella finestra di messaggio fastidioso comunque. Quindi, forse, l'unico modo sarebbe quello di convalidare il formato di file prima di aprirlo. C'è, poi, un altro metodo in Excel API per consentire tale convalida?

È stato utile?

Soluzione

Mi dispiace, io non sono in grado di simulare l'esempio di file xls corrotto con Excel 2007.

Prova Application.DisplayAlerts = false prima di chiamare Workbooks.Open ...

Se la cartella di lavoro non può essere aperto, il valore restituito sarà nullo.
(Cioè Workbook wkb = Workbooks.Open (....); wkb sarà nullo quando DisplayAlerts = False e il file non poteva essere opended)

Questa è puramente basato su quello che ho capito del modello a oggetti di Excel.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top