Rapeler une feuille

Résolu
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016 - 23 mai 2007 à 15:43
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016 - 25 mai 2007 à 12:44
Bonjour,
je suis un vrais noob (débutant) en prog.
je sais enregistrer une macro sous EXEL grace a l'enregistreur et l'appliquer a une feuille de maniere a se que cette macro s'applique au changement de fenetre.
mais mon probleme est que ma macro m'ouvre toujours une feuille sur la quelle je fait des modifs, mais je ne veux pas que cette feuille s'ouvre a chaque foix.

Je voudrais savoir comment faire pour copier le nom (feuille 1) de la feuille que je selectionne, appliquer ma macro qui me met sur la feuille que je ne veux pas afficher (feuille 2), puis afficher la feuille dont j'ai copier le nom (feuille 1).

voila

10 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
23 mai 2007 à 16:43
Salut,

si tu veux récupérer le nom d'une feuille, ce n'est pas en tant qu'objet que tu dois récupérer l'infos, mais en tant que String :

Dim NameSheet As String

NameSheet = ActiveSheet.Name
Sheets(NameSheet).Select

Par contre, dans ce cas de figure, c'est inutile, car pourquoi sélectionner la feuille qui est déjà active ?

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~

nouveau Forum ! Exclusivement Office / VBA
                                                                                                                    
                                                                                          
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
23 mai 2007 à 16:57
Oui, absolument.
Tu la renommes comme tu veux, tant que ce n'est pas un mot réservé par VB, et que ça ne commence pas par un chiffre

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~

nouveau Forum ! Exclusivement Office / VBA
3
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
24 mai 2007 à 00:42
Tu peux aussi y aller comme tu disais

Dim Feuille as Worksheet
Set Feuille = ActiveSheet
... tu fais ton bout de code sur une autre feuille
Feuille.activate  ' et tu reviens sur ta feuille de départ

MPi
3
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016
23 mai 2007 à 16:35
bon j'ai trouvé ca pour le début, je ne sais pas si c est bon ou non, mais je n'arrive pas a reselectionner ma feuille

'création de la mémoire de page selectionné
'Worksheets.Copy
'ActiveSheet.Name    'Renvoie le nom de la feuille placée au premier plan

Dim Ws As Worksheet 'Déclare la variable objet Worksheet

'Attribue la référence objet à la variable

Set Ws = ActiveSheet.Name   'La feuille est un Objet: la variable doit donc être précédée de l'instruction Set lors de l'attibution.

'selection la feuille mise en mémoire

Worksheets Ws.Select

L'erreur se trouve au niveau de ma derniere commande.
A L'aide
0

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

Posez votre question
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016
23 mai 2007 à 16:53
ok merci mortalino, je suppose que NameSheet est le nom de ma variable et que par consequant je peux l'appeler comme je veux Fselect par exemple ??

Dim NameSheet As String
0
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016
23 mai 2007 à 17:09
ok merci pour la précision.
 et tu me disais :Par contre, dans ce cas de figure, c'est inutile, car pourquoi sélectionner la feuille qui est déjà active ?

ben non ce ma feuille n'est plus active après l'execution de ma macro, et la justement je la rappel.

voila encore merci pour tout
0
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016
24 mai 2007 à 13:13
Ecoute MPI ça ne fonctionne pas comme tu me dis
Ptetre je me trompe dans le code

Dim FeuiSelect As Worksheet
Set FeuiSelect = ActiveSheet

mon code de mise en forme

Worksheets(FeuiSelect).Select
0
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016
24 mai 2007 à 13:42
je me suis trompé dans se que j'ai coller

Dim FeuiSelect As Worksheet
Set FeuiSelect = ActiveSheet

mon code de mise en forme

FeuiSelect.Select

Voila c'est mieu, mais ca ne fonctionne jtrs pas, j'ai une erreur dans la derniere ligne (FeuiSelect.Select)
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
25 mai 2007 à 02:46
Je pense avoir écrit Activate et non Select
Est-ce que tu travailles avec des feuilles différentes dans le même classeur ou dans des classeurs différents ?

MPi
0
lal1 Messages postés 14 Date d'inscription mercredi 23 mai 2007 Statut Membre Dernière intervention 31 août 2016
25 mai 2007 à 12:44
je suis confu

je travail sur plusieurs feuilles dans le même classeur

Pourtent j'ai relu 10X se que tu m'avais écrit quand j'avais vu que ça ne fonctionnait pas
0
Rejoignez-nous