Supprimer une feuille de classeur Excel depuis VB.net
Résolu/Fermé
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
-
Modifié par voulfka1688 le 27/09/2013 à 00:29
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 - 22 oct. 2013 à 17:37
voulfka1688 Messages postés 55 Date d'inscription jeudi 15 novembre 2012 Statut Membre Dernière intervention 9 mai 2020 - 22 oct. 2013 à 17:37
A voir également:
- Supprimer une feuille de classeur Excel depuis VB.net
- Supprimer une page word - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Supprimer compte instagram - Guide
- Déplacer une colonne excel - Guide
9 réponses
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
27 sept. 2013 à 07:52
27 sept. 2013 à 07:52
Bonjour,
wbExcel.Worksheets.Delete() Avez-vous mis le nom de la feuille a deleter: wbExcel.Worksheets.Delete("nomdelafeuille") ?????
wbExcel.Worksheets.Delete() Avez-vous mis le nom de la feuille a deleter: wbExcel.Worksheets.Delete("nomdelafeuille") ?????
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
27 sept. 2013 à 20:57
27 sept. 2013 à 20:57
En effet, j'ai mis
wbExcel.Worksheets(numfeuil).name = "Feuilakill" <-- je renomme pour être sur
wbExcel.Worksheets("Feuilakill").Delete() <---- je demande la suppression
wbExcel.Close() <--- je ferme le classeur et je provoque une fenêtre qui me demande si je souhaite enregistrer. (évidement je dis oui) mais quand j'ouvre le fichier excel la page a bien été renommé cela est sur mais ... elle est toujours là.
et lorsque que je met le nom ici : wbExcel.Worksheets.Delete("Feuilakill")
il m'indique "Arguments trop nombreux pour 'Public Sub Delete()'.
wbExcel.Worksheets(numfeuil).name = "Feuilakill" <-- je renomme pour être sur
wbExcel.Worksheets("Feuilakill").Delete() <---- je demande la suppression
wbExcel.Close() <--- je ferme le classeur et je provoque une fenêtre qui me demande si je souhaite enregistrer. (évidement je dis oui) mais quand j'ouvre le fichier excel la page a bien été renommé cela est sur mais ... elle est toujours là.
et lorsque que je met le nom ici : wbExcel.Worksheets.Delete("Feuilakill")
il m'indique "Arguments trop nombreux pour 'Public Sub Delete()'.
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
28 sept. 2013 à 07:33
28 sept. 2013 à 07:33
Bonjour,
essayez sans les () a la fin:
wbExcel.Worksheets("Feuilakill").Delete
essayez sans les () a la fin:
wbExcel.Worksheets("Feuilakill").Delete
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
28 sept. 2013 à 22:37
28 sept. 2013 à 22:37
il me les rajoute automatiquement snif
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
29 sept. 2013 à 06:58
29 sept. 2013 à 06:58
Bonjour,
Bonjour, voilà dans le développement de mon application, Vous developpez en quel langage ?????
Bonjour, voilà dans le développement de mon application, Vous developpez en quel langage ?????
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
29 sept. 2013 à 10:28
29 sept. 2013 à 10:28
en VB.net depuis Microsoft Visual Basic 2008
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
29 sept. 2013 à 10:47
29 sept. 2013 à 10:47
Bonjour,
en suivant ce lien, vous aurez un exemple de pilotage excel via vb.net, par contre pas de delete de feuille. Regardez vos declarations de variable etc ...
https://support.microsoft.com/en-us/help/301982
A defaut, montrez le code complet pour que nous puissions comprendre.
A+
en suivant ce lien, vous aurez un exemple de pilotage excel via vb.net, par contre pas de delete de feuille. Regardez vos declarations de variable etc ...
https://support.microsoft.com/en-us/help/301982
A defaut, montrez le code complet pour que nous puissions comprendre.
A+
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
3 oct. 2013 à 20:33
3 oct. 2013 à 20:33
Bonjour, après de multiple tentative et recherche voici l'intégralité de mon code car je n'ai toujours pas trouvé de solution ....
En espérant que vous trouviez ce qui cloche.
Imports Microsoft.Office
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Excel
Public Class Gestion
Dim nbagent As Integer
Dim ligne As Integer = 2
Dim compteurappli As Integer = 0
Dim temp As String
Dim Basedonnees2 As String
Dim numfeuil As Integer
Private Sub Gestion_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
temp = Form1.basedonnees
Basedonnees2 = temp.Replace("db.xlsx", "db2.xls")
numfeuil = 1
''Lignes de base...
Label3.Text = numfeuil
Try
choixclient.appExcel = New Excel.Application
choixclient.wbExcel = choixclient.appExcel.Workbooks.Open(Basedonnees2) 'path: le chemin d'accès à ton fichier
choixclient.wsExcel = choixclient.wbExcel.Worksheets(numfeuil)
Label2.Text = choixclient.wsExcel.Cells(2, 7).value.ToString
TextBox1.Text = choixclient.wsExcel.Cells(2, 8).Value.ToString
TextBox2.Text = choixclient.wsExcel.Cells(2, 2).value.ToString
TextBox3.Text = choixclient.wsExcel.Cells(2, 3).value.ToString
TextBox4.Text = choixclient.wsExcel.Cells(2, 4).value.ToString
TextBox5.Text = choixclient.wsExcel.Cells(2, 5).Value.ToString
TextBox6.Text = choixclient.wsExcel.Cells(2, 6).value.ToString
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
choixclient.wbExcel.Worksheets(numfeuil).name = "Feuilakill"
choixclient.wbExcel.Worksheets("Feuilakill").Select
choixclient.wbExcel.Worksheets.Delete()
choixclient.wbExcel.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
numfeuil = numfeuil + 1
Try
choixclient.wsExcel = choixclient.wbExcel.Worksheets(numfeuil)
Label2.Text = choixclient.wsExcel.Cells(2, 7).value.ToString
TextBox1.Text = choixclient.wsExcel.Cells(2, 8).Value.ToString
TextBox2.Text = choixclient.wsExcel.Cells(2, 2).value.ToString
TextBox3.Text = choixclient.wsExcel.Cells(2, 3).value.ToString
TextBox4.Text = choixclient.wsExcel.Cells(2, 4).value.ToString
TextBox5.Text = choixclient.wsExcel.Cells(2, 5).Value.ToString
TextBox6.Text = choixclient.wsExcel.Cells(2, 6).value.ToString
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
choixclient.wbExcel.Close()
choixclient.appExcel.Quit()
End Sub
End Class
En espérant que vous trouviez ce qui cloche.
Imports Microsoft.Office
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Excel
Public Class Gestion
Dim nbagent As Integer
Dim ligne As Integer = 2
Dim compteurappli As Integer = 0
Dim temp As String
Dim Basedonnees2 As String
Dim numfeuil As Integer
Private Sub Gestion_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
temp = Form1.basedonnees
Basedonnees2 = temp.Replace("db.xlsx", "db2.xls")
numfeuil = 1
''Lignes de base...
Label3.Text = numfeuil
Try
choixclient.appExcel = New Excel.Application
choixclient.wbExcel = choixclient.appExcel.Workbooks.Open(Basedonnees2) 'path: le chemin d'accès à ton fichier
choixclient.wsExcel = choixclient.wbExcel.Worksheets(numfeuil)
Label2.Text = choixclient.wsExcel.Cells(2, 7).value.ToString
TextBox1.Text = choixclient.wsExcel.Cells(2, 8).Value.ToString
TextBox2.Text = choixclient.wsExcel.Cells(2, 2).value.ToString
TextBox3.Text = choixclient.wsExcel.Cells(2, 3).value.ToString
TextBox4.Text = choixclient.wsExcel.Cells(2, 4).value.ToString
TextBox5.Text = choixclient.wsExcel.Cells(2, 5).Value.ToString
TextBox6.Text = choixclient.wsExcel.Cells(2, 6).value.ToString
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
choixclient.wbExcel.Worksheets(numfeuil).name = "Feuilakill"
choixclient.wbExcel.Worksheets("Feuilakill").Select
choixclient.wbExcel.Worksheets.Delete()
choixclient.wbExcel.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
numfeuil = numfeuil + 1
Try
choixclient.wsExcel = choixclient.wbExcel.Worksheets(numfeuil)
Label2.Text = choixclient.wsExcel.Cells(2, 7).value.ToString
TextBox1.Text = choixclient.wsExcel.Cells(2, 8).Value.ToString
TextBox2.Text = choixclient.wsExcel.Cells(2, 2).value.ToString
TextBox3.Text = choixclient.wsExcel.Cells(2, 3).value.ToString
TextBox4.Text = choixclient.wsExcel.Cells(2, 4).value.ToString
TextBox5.Text = choixclient.wsExcel.Cells(2, 5).Value.ToString
TextBox6.Text = choixclient.wsExcel.Cells(2, 6).value.ToString
Catch ex As Exception
MessageBox.Show(ex.ToString())
End Try
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
choixclient.wbExcel.Close()
choixclient.appExcel.Quit()
End Sub
End Class
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
Modifié par voulfka1688 le 3/10/2013 à 20:39
Modifié par voulfka1688 le 3/10/2013 à 20:39
Précisions :
La variable "basedonnees" contient le chemin de mon fichier excel (initial) je remplace juste le nom du fichier par mon deuxième fichier excel qui se trouve dans le même dossier. Elle est déclaré dans une autre windowsform
Les variables appExcel, wbExcel, et wsExcel sont également déclarés depuis une autre windowsform nommé "choixclient"
La variable "basedonnees" contient le chemin de mon fichier excel (initial) je remplace juste le nom du fichier par mon deuxième fichier excel qui se trouve dans le même dossier. Elle est déclaré dans une autre windowsform
Les variables appExcel, wbExcel, et wsExcel sont également déclarés depuis une autre windowsform nommé "choixclient"
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
4 oct. 2013 à 07:41
4 oct. 2013 à 07:41
Bonjour,
site :
https://docs.microsoft.com/en-us/visualstudio/vsto/how-to-programmatically-delete-worksheets-from-workbooks?redirectedfrom=MSDN&view=vs-2019#code-snippet-1
Pour supprimer une feuille de calcul à l'aide de la collection Sheets du classeur Excel
Appelez la méthode Delete de la collection Sheets.
CType(Me.Application.ActiveWorkbook.Sheets(4), Excel.Worksheet).Delete()
A voir
site :
https://docs.microsoft.com/en-us/visualstudio/vsto/how-to-programmatically-delete-worksheets-from-workbooks?redirectedfrom=MSDN&view=vs-2019#code-snippet-1
Pour supprimer une feuille de calcul à l'aide de la collection Sheets du classeur Excel
Appelez la méthode Delete de la collection Sheets.
CType(Me.Application.ActiveWorkbook.Sheets(4), Excel.Worksheet).Delete()
A voir
voulfka1688
Messages postés
55
Date d'inscription
jeudi 15 novembre 2012
Statut
Membre
Dernière intervention
9 mai 2020
1
22 oct. 2013 à 17:37
22 oct. 2013 à 17:37
Bonjour,
Solution enfin trouvé !!!
il faut simplement ceci : myworksheet.Application.DisplayAlerts = false
La musiquette faisait vraisemblablement apparaître une fenêtre mais celle étant invisible ^^ fallait la voire !!!
Mon problème est résolu, merci a vous tous.
Cordialement.
Solution enfin trouvé !!!
il faut simplement ceci : myworksheet.Application.DisplayAlerts = false
La musiquette faisait vraisemblablement apparaître une fenêtre mais celle étant invisible ^^ fallait la voire !!!
Mon problème est résolu, merci a vous tous.
Cordialement.