Ouvrir et Fermer Excel en vb.NET sur 2 formulaire
Bonjour! Je suis nouveau et j’apprends en autodidacte VB.NET.
J'ai face à moi un problème donc je ne trouve pas comment la régler.
J'essaye de coder une Application Windows Form (.NET Framework) sur Visual Studio.
Et dans le programme j'ai 2 formulaire :
- Le 1er qui s'occupe de trouver un fichier Excel via un bouton Browser et lorsque l'on appuie le bouton Ouvrir,
on ouvre le fichier Excel en background et on ferme le 1er formulaire et on ouvre le 2ème formulaire.
- Le 2eme qui contient des comboBox pour permettre la sélection d'une valeur particulière dans les colonnes (pas encore faite, car je ne sais pas comment on prend une colonne d'un fichier Excel pour la mettre dans une comboBox)
Ici on s'occupera plutôt de notre problème qui s'agit du bouton Retour , en effet j'essaye de faire en sorte que lorsque que l'on clic sur Retour, le 2eme se ferme Ainsi que l'Excel en cours d’exécution.
Sauf que le programme me renvoie une erreur comme quoi "excel.Quit()" n'est pas referencé.
Voici le programme ci-dessous des 2 formulaires :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| Public Class Form1
Public excel As Microsoft.Office.Interop.Excel.Application
Private Sub Browse1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Browse1.Click
ofd.Filter = "Excel Files(.xls)|*.xls|Excel Files(.xlsx)|*.xlsx|Excel Files(*.xlsm)|*.xlsm"
If (ofd.ShowDialog() = DialogResult.OK) Then
TextBox1.Text = ofd.FileName
End If
End Sub
Private Sub Comfirm1_Click(sender As Object, e As EventArgs) Handles Comfirm1.Click
Dim excel As New Microsoft.Office.Interop.Excel.Application
Dim wb As Microsoft.Office.Interop.Excel.Workbook
Dim FinderForm As New Form2
If TextBox1.Text = "" Then
MessageBox.Show("Wait!", "Please pick your file first!", MessageBoxButtons.OKCancel)
Else
wb = excel.Workbooks.Open(TextBox1.Text)
excel.Visible = False
wb.Activate()
FinderForm.Show()
Me.Hide()
End If
End Sub
End Class |
Code:
1 2 3 4 5 6 7 8 9 10
| Public Class Form2
Public excel As Microsoft.Office.Interop.Excel.Application
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim FinderFile As New Form1
excel.Quit()
FinderFile.Show()
Me.Close()
End Sub
End Class |
Merci d'avance pour toute remarques/aides pouvant m'aider à apprendre plus.
PS: Si vous avez besoin du dossier du projet pour compiler dite le moi ;).