[Vba] question sur la methode add dans la collection workbook

question sur la methode add dans la collection workbook [Vba] - VB/VBA/VBS - Programmation

Marsh Posté le 06-02-2004 à 16:37:36    

En fait j'ai 2 questions :
 
- Comment ajouter un classeur en précisant le nombre de feuille et leur nom dans ce classeur ?
 
- Comment faire saisir le nom de ce nouveau classeur a l'ouverture ? (Application.Dialogs(xlDialogSaveAs).Show ????)
 
Merci de vos idées et de vos conseils.


---------------
Les hommes n'acceptent le changement que dans la nécessité et ils ne voient la nécessité que dans la crise.
Reply

Marsh Posté le 06-02-2004 à 16:37:36   

Reply

Marsh Posté le 09-02-2004 à 12:01:36    

[:yoyoz]


---------------
Les hommes n'acceptent le changement que dans la nécessité et ils ne voient la nécessité que dans la crise.
Reply

Marsh Posté le 18-02-2004 à 10:46:38    

Bonjour,
 
Il n;est jamais trop tard pour repondre, et si tu n'a pas encore de solution, en voila une VBA):
 
Par defaut Excel creer un nouveau classeur avec trois feuilles, mais tu peux ouvrir un classeur a partir d'un template
ActiveWorkbook.add "Chemin du template avec son nom"
 
Et voila un nouveau classeur preformatter par tes soins.
 
ou alors modifier la propriete :Application.SheetsInNewWorkbook en mettant le nombre de feuille que tu veux (attention ca modifie la configuration d'excel, reinitialiser apres)
 
Derniere solution, si tu ne veux pas utiliser de templates, tu peux creer le fichier integralement a partir de tes macros:
 
Sub nouveau_classeur()
Dim i, nbfeuille, initial As Integer
 
'<<<Enregistre le nombre de feuille par defaut>>>
initial = Application.SheetsInNewWorkbook
 
'<<<Nombre de feuilles a rajouter>>>
nbfeuille = 5
 
'<<<Modifie la config excel avec le nombre de feuilles prevues>>>
Application.SheetsInNewWorkbook = nbfeuille
 
'<<<ajoute le classeur>>>
Workbooks.Add
 
'<<<Renome toutes les feuilles>>>
With ActiveWorkbook
For i = 1 To nbfeuille
.Sheets(i).Name = "Nom" & i
Next
End With
 
'<<<Remet le nombre de feuille initialement prevu>>>
with Application
.SheetsInNewWorkbook = initial
 
'<<<Sauvegarde du fichier>>>
.Dialogs(xlDialogSaveAs).Show  
end with
End Sub
 
Sinon pour sauvegarder le fichier avec un nom precis, le Application.Dialogs(xlDialogSaveAs).Show est tres bien.
 
Bon courage
 
I.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed