[VBA] Création d'un nouveau classeur Excel...
Résolu
Neverend
Messages postés
21
Statut
Membre
-
ll -
ll -
Bonjour,
J'aimerai savoir si depuis un classeur Excel, on peut créer un autre classeur avec 5 onglets, chaque onglets ayant un nom spécifique, et le sauvegarder.
Merci pour vos réponses et de votre aide ... je suis nul en programmation.
A bientôt de vous lire
J'aimerai savoir si depuis un classeur Excel, on peut créer un autre classeur avec 5 onglets, chaque onglets ayant un nom spécifique, et le sauvegarder.
Merci pour vos réponses et de votre aide ... je suis nul en programmation.
A bientôt de vous lire
A voir également:
- Créer un fichier excel vba
- Fichier bin - Guide
- Creer un fichier .bat - Guide
- Comment créer un groupe whatsapp - Guide
- Comment réduire la taille d'un fichier - Guide
- Créer un compte google - Guide
3 réponses
Bonjour,
J'ai progressé en VBA. Je laisse ici le code que j'ai employé. Pas forcément le top, mais répond au besoin :
Cdlt.
PS: Phil, si tu repasses par là, tu as le bonjour du paresseux.
J'ai progressé en VBA. Je laisse ici le code que j'ai employé. Pas forcément le top, mais répond au besoin :
Sub AddNewWorkbook()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
'On créer l'objet Excel
Set xlApp = CreateObject("Excel.Application")
'On défini le nombre d'onglets (ici 5)
xlApp.SheetsInNewWorkbook = 5
'On ajoute un classeur
Set xlBook = xlApp.Workbooks.Add
'On donne un nom au classeur
xlBook.SaveAs ("Mon Classeur.xls")
'On rend le classeur visible
xlApp.Visible = True
'On créer l'objet onglet dans le nouveau classeur créé
Set xlSheet = xlBook.Worksheets(1)
'On affecte un nom aux l'onglets
xlSheet.Name = "Janvier"
'on libère l'objet onglet pour pouvoir en créer un nouveau ... etc
Set xlSheet = Nothing
'
'
Set xlSheet = xlBook.Worksheets(2)
xlSheet.Name = "Février"
'
'....... On donne un nom à chaque onglets
'
'
'On remet la propriété de l'application à 3 (par défaut)
xlApp.SheetsInNewWorkbook = 3
'On ferme l'application
xlApp.Quit
End Sub
Cdlt.
PS: Phil, si tu repasses par là, tu as le bonjour du paresseux.
Comment tu fais pour choisir le chemin de la sauvegarde de ton fichier ceer
xlBook.SaveAs ("Mon Classeur.xls") par xlBook.SaveAs ("C:\...\Mon Classeur.xls")
Comment je peux travailler sur le nouveau fichier par exemple j'ai essayer avec ça :
"Workbooks("Mon Classeur").Worksheets("Sheet1").Range("G").Value = ActiveWorkbooK.ActiveSheet.Range("G").Value"
Dans le meme script de creation , on fait je veux créer un nouveau fichier "Mon Classeur" et je veux transférer des informations de ActiveWorkbook vers Workbooks("Mon Classeur").
Mais toujours il m'afficher une erreur " subscript out of range "
Function PrendreChemin() As String
Dim repertoir As FileDialog
Dim sItem As String
Set repertoir = Application.FileDialog(msoFileDialogFolderPicker)
With repertoir
.Title = "choisissez la bonne répertoire"
.AllowMultiSelect = False
If .Show <> -1 Then GoTo NextCode
sItem = .SelectedItems(1)
End With
NextCode:
PrendreChemin = sItem
Set repertoir = Nothing
End Function
Function PrendreFichiers() As String
Dim fd As FileDialog
Dim fichiers As String
Dim fichier As Variant
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fichiers = ""
With fd
.Filters.Clear
.Filters.Add "All files", "*.*"
.Filters.Add "Images", "*.gif; *.jpg; *.jpeg", 1
.Filters.Add "Excel", "*.xls; *.xlsx; *.xlsm", 2
.Filters.Add "Word", "*.doc; *.docx; *.docs", 3
If .Show = -1 Then
For Each fichier In .SelectedItems
If fichiers <> "" Then
fichiers = fichiers + ";" + fichier
Else
fichiers = fichier
End If
Next fichier
End If
End With
Set fd = Nothing
PrendreFichiers = fichiers
End Function