Création fichier .XSLX [Résolu]

Signaler
Messages postés
35
Date d'inscription
mercredi 30 juillet 2014
Statut
Membre
Dernière intervention
27 avril 2017
-
Messages postés
35
Date d'inscription
mercredi 30 juillet 2014
Statut
Membre
Dernière intervention
27 avril 2017
-
Bonjour,

Je me permets de venir vous demander un coup de pouce car je souhaiterai créer un fichier .xslx mais les exemple utilisant "Microsoft interop" créé un fichier xls. J'ai bien tenté de remplacé betement l'extension mais il me plante mon fichier...

Voici le code utilisé.

Merci d'avance de votre aide


Dim xls As Excel.Application
Dim xlsfeuille As Excel.Worksheet
Dim xlsclasseur As Excel.Workbook
Dim chpath As String = "C:\temp\test.xslx"

xls = CreateObject("Excel.Application")
xlsclasseur = xls.Workbooks.Add
xlsfeuille = xlsclasseur.Worksheets(1)



xlsfeuille.Cells(3, 1).Value = "MA FEUILLE EXCEL EST BELLE ET BIEN CREE"
xlsfeuille.Cells(4, 1).Value = "C'EST FACILE NON"


'CommonDialog1.Filter = "Fichiers excel (*.xlsx)|*.xlsx"
'CommonDialog1.ShowSave()
'chpath = CommonDialog1.FileName
If chpath <> "" Then
xlsclasseur.SaveAs(chpath)
End If
xls.Application.Quit()
xls = Nothing
MsgBox("FIN DE L'EXPORTATION", vbOKOnly + vbInformation, "GESTION DES STATISTIQUES")

3 réponses

Messages postés
15934
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
15 mai 2021
545
Bonsoir,

il me semble que ça marche aussi avec les xlxx.
Quelle version d'excel as tu?
Messages postés
7378
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 mai 2021
122
Bonjour,

Apprends- toi à mettre Option Strict à On, tu verras toutes les erreurs!
Ensuite en VB.Net on n'utilise plus ceci:

xls = CreateObject("Excel.Application")


Voir ceci:

http://codes-sources.commentcamarche.net/source/100410-piloter-office-en-vb-net

voici le code:

'Aller dans My Project- Références et ajouter dans COM:
'Microsoft Excel Object 12.0 Library
Option Strict On
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Excel
Public Class Form1
    ' http://codes-sources.commentcamarche.net/source/100410-piloter-office-en-vb-net
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        'Créer une instance de Excel
        Dim ApExcel As New Excel.Application
        Dim wbExcel As New Excel.Worksheet
        Dim chpath As String = "C:\temp\"
        Dim nom As String = "test"
        'Créer un nouveau classeur
        ApExcel.Workbooks.Add()
        'Ouvrir un  classeur
        'ApExcel.Workbooks.Open("chemin classeur.xls")
        'rendre le classeur visible
        ApExcel.Visible = True
        ApExcel.Range("A1").Formula = "Bonjour" 'Ajouter du texte à une cellule
        ApExcel.ActiveWorkbook.SaveAs(chpath & nom & ".xlsx")
        ApExcel.Workbooks.Close() 'on ferme le classeur
        ApExcel.Visible = False
        ApExcel.Quit() 'on ferme Excel
    End Sub
End Class

Messages postés
35
Date d'inscription
mercredi 30 juillet 2014
Statut
Membre
Dernière intervention
27 avril 2017

Bonjour Whismeril et cs_Le Pivert,

merci d'avoir pris le temps de répondre à mon post. J'ai testé le code de cs_Le Pivert et ça fonctionne. Je devais faire une connerie quelques part.

cs_Le Pivert, merci pour le conseil de l'option "Strict" à On. Je ne connaissais pas. En même temps, je débute en VB donc...

Je clos le sujet