Insertion de feuilles Excel

Résolu
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009 - 12 juin 2007 à 14:06
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009 - 12 juin 2007 à 15:45
Bonjour,

je souhaite grâce à VB insérer des feuilles dans un classeur Excel. Je fais donc

Dim appExcel As New Excel.Application
Workbooks.Add                    'par défaut une seule feuille constitue mon nouveau classeur
Dim var As Integer
For var  =  2 To 10
   Worksheets.Add
Next

Ensuite je souhaite déplacer mes feuilles pour les mettres dans un ordre précis car le problème est que mes feuilles se crée avant la première feuille et elles sont donc en ordre inverse (10, 9, 8, ..., 1). Existe t-il un paramètre à mettre à Worsheets.Add pour quelles se créent après ma feuille initiale ?

Merci.
                               

13 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
12 juin 2007 à 14:13
Salut,
Le second parametre de WorkSheets.Add => After

Workbooks.Add                    'par défaut une seule feuille constitue mon nouveau classeur
Dim var As Integer
For var = 2 To 10
  Call Worksheets.Add(, ActiveSheet)
 
Next, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
12 juin 2007 à 14:14
Re,
Note: Je ne comprens pas ton commentaire'par défaut une seule feuille constitue mon nouveau classeur
Attention par défaut un classeur possède trois feuilles
@+: Ju£i?n
Pensez: Réponse acceptée
0
drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
12 juin 2007 à 14:19
Salut, pourquoi tu n'utilises pas l'argument after de la méthode Add?

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)
0
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009
12 juin 2007 à 14:26
Oui par défaut c'est 3 mais pour moi je l'ai réglé à 1. C'est donc par défaut pour moi  même si par défaut n'est pas le terme le plus approprié!

En tout cas ça marche merci à vous deux !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009
12 juin 2007 à 14:39
Et autre petite question losque je crée un classeur avec 3 feuilles que j'en supprime deux et que j'en ajoute d'autres pourquoi je n'arrive pas à supprimer la dernière feuille initiale qui reste.

Je fais pourtant :
Sheets("Feuil1").Select
Sheets("Feuil1").Delete

Merci.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
12 juin 2007 à 14:42
Re,
APres la boucle d'ajout?

@+: Ju£i?n
Pensez: Réponse acceptée
0
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009
12 juin 2007 à 14:46
Re,

oui je rajoute plusieurs feuilles d'abord et ensuite je selectionne ma feuille initiale et je veux la supprimer avec Delete mais cela ne fonctionne pas.

Merci!
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
12 juin 2007 à 14:51
Re,
Essaie WorkSheets(1).Delete
Si ca ne fonctionne il faut penser à préciser le message d'erreur si il y en à un

@+: Ju£i?n
Pensez: Réponse acceptée
0
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009
12 juin 2007 à 15:01
Re,

Non cela ne fonctionne pas et je n'ai pas de message d'erreur. Mon programme compile, je le lance, j'ai bien toutes les feuilles que j'ai ajouté mais il reste feuille1 malgré que j'ai demandé qu'il la supprime.

Merci.
0
drikce06 Messages postés 2236 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 10
12 juin 2007 à 15:05
Mets ton bout de code mais tout ouverture appli, classeur etc.

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)
0
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009
12 juin 2007 à 15:25
Voila le code :

Workbooks.Add
WorkSheets(2).Delete
WorkSheets(3).Delete
Dim var As Integer
For var = 2 To 10
  Call Worksheets.Add(, ActiveSheet)
Next

WorkSheets(1).Delete

Merci.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
12 juin 2007 à 15:28
Salut,
Ca fonctionne chez moi, le seul truc c'est le Message Excel qui apparait à chaque fois alors je le supprime avec DisplayAlerts = False.

Dim var As Integer
   Application.DisplayAlerts = False
   Workbooks.ADD
   Worksheets("Feuil3").Delete
   Worksheets("Feuil2").Delete
   For var = 2 To 10
     Call Worksheets.ADD(, ActiveSheet)
   Next
   
   Worksheets("Feuil1").Delete
   Application.DisplayAlerts = True , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
RS8 Messages postés 100 Date d'inscription vendredi 18 mai 2007 Statut Membre Dernière intervention 15 juillet 2009
12 juin 2007 à 15:45
Excellent ça marche !

Merci pour ton aide jrivet!
Bonne continuation!

A +.
0
Rejoignez-nous