Tuning Max
Messages postés314Date d'inscriptionmercredi 15 juin 2005StatutMembreDernière intervention31 août 20061 8 nov. 2005 à 13:10
Voilà je l'ai testé et cela fonctionne bien chez moi. J'espère que cela taura aidé
Sub creafichier()
Dim appExcel As New Excel.Application, wbk As Workbook, wsht As Worksheet
Dim chNameOut As String, i As Integer, j As Integer, maVar As String
maVar = "test"
' Ouverture de l'application Excel
Set appExcel = CreateObject("Excel.Application")
With appExcel
.Workbooks.Add
.Visible = True 'mettre à True pour l'afficher à l'écran , mettre à False pour pas qu'Excel reste invisible
End With
Set wbk = ActiveWorkbook
Set wsht = ActiveSheet
With wbk
For i = 1 To 2
For j = 1 To 3
With wsht
.Cells(i, j).Value = maVar
End With
Next j
Next i
.SaveAs "c:\temp\testcréationfichier.xls"
End With
appExcel.Quit ' Une fois terminé, utilise la méthode Quit pour fermer
Set appExcel = Nothing ' puis libère la référence
End Sub
En effet, inutile de coder : Set appExcel = CreateObject("Excel.Application")
si on a déjà déclaré : Dim appExcel As New Excel.Application
D'autre part, le .Visible = True puis ensuite appExcel.Quit, ça peut poser des problèmes et générer des erreurs car l'un donne la main à l'utilisateur qui choisi de fermer, enregistrer, ... et l'autre qui quitte l'appli par prog. C'est un choix à faire.
Avec le code que j'ai proposé, l'utilisateur ne voit rien mais le fichier est créé.
Si tu veux que l'utilisateur voit le fichier s'afficher et lui donner le choix de sauvegarder ou non, précises-le.
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?