[VBA] Création d'un nouveau classeur Excel...

Résolu/Fermé
Neverend
Messages postés
21
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
29 octobre 2008
- 14 déc. 2007 à 14:58
 ll - 27 janv. 2017 à 15:41
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

3 réponses

Neverend
Messages postés
21
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
29 octobre 2008
81
29 oct. 2008 à 03:57
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 :

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.
88
Bonjour,
Comment tu fais pour choisir le chemin de la sauvegarde de ton fichier ceer
0
pour choisir le chemin ou tu vas sauvegarder ton fichier, tu remplace :
xlBook.SaveAs ("Mon Classeur.xls") par xlBook.SaveAs ("C:\...\Mon Classeur.xls")
0
Bonjour
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 "
0
Comment je peux choisir le chemin où je veux enregistrer mon classeur ?
0
Rak1111 > Nouveau
16 juin 2015 à 16:01
pour choisir le chemin.

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
0