Revenir à l'onglet de départ suite à macro Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Avatar du membre
dasaquit
Membre fidèle
Membre fidèle
Messages : 165
Inscrit le : 11 septembre 2012
Version d'Excel : 2013/2016 Pro Plus FR

Message par dasaquit » 8 février 2014, 16:32

Bonjour à tous,

Encore besoin d'un petit coup de main, comme quoi il n'y a pas de vacances sur la planète Excel !

Ci-joint un petit fichier de pointage que j'ai épuré avant de poster,
Ce fichier, après avoir renseigné l'année me génère 20 onglets.
J'ai besoin, de temps en temps d'accéder à l'onglet "Données" à l'aide d'une macro basique.
Je reviens ensuite toujours à l'aide d'une macro basique en sélectionnant l'onglet S1.

Cependant, je souhaiterai revenir à l'onglet de départ et non à l'onglet S1 en, permanence !

Est ce possible s'il vous plait ?

Merci par avance.

@ toute....
Test onglets.xlsm
(226.07 Kio) Téléchargé 71 fois
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 8'538
Appréciations reçues : 28
Inscrit le : 6 avril 2007
Version d'Excel : 2010

Message par Yvouille » 8 février 2014, 16:51

Salut,

J'espère t'avoir bien compris.

Dans le fichier ci-joint, lorsque tu es sur la feuille 'Données', tu peux choisir de revenir sur n'importe quelle feuille par l'intermédiaire du nouveau bouton en place.

Comme est prévue cette macro, tu peux choisir la feuille à sélectionner en plusieurs fois et seulement lorsque tu confirmes, ça atteint la page désirée.

On pourrait faire que la première feuille choisie soit immédiatement sélectionnée et le UserForm immédiatement refermé.

Cordialement.
Test onglets_V1.xlsm
(230.86 Kio) Téléchargé 113 fois
Yvouille


:btres:
Avatar du membre
dasaquit
Membre fidèle
Membre fidèle
Messages : 165
Inscrit le : 11 septembre 2012
Version d'Excel : 2013/2016 Pro Plus FR

Message par dasaquit » 8 février 2014, 17:00

Bonjour Yvouille,

Toujours de service ? ;;)

Merci ta solution me plait, mais en fait ce fichier comporte 52 onglets comme 52 semaines (trop lourd pour poster!)

N'y a t'il pas une solution sans useform s'il te plait ?

En effet il me semble assez galère de se rappeler le numéro d'onglet où on était lorsque le useform le demande !

D'où l'idée de revenir à l'onglet de départ.

Merci :)
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 8'538
Appréciations reçues : 28
Inscrit le : 6 avril 2007
Version d'Excel : 2010

Message par Yvouille » 8 février 2014, 17:15

Alors éventuellement en modifiant tes macros 5 et 6 ainsi :
Sub Macro5()
Dim i As String
    
    i = ActiveSheet.Name
    Sheets("Données").Visible = True
    Sheets("Données").Select
    Range("DD1") = i
    Range("A1").Select

End Sub
Sub Macro6()
Dim i As String
    
    i = Range("DD1")
    If Sheets("S1").Visible = True Then
    Sheets("Données").Visible = False
    Sheets(i).Select
    Range("C1").Select

End If
End Sub
Amicalement.
Test onglets_V2.xlsm
(227.64 Kio) Téléchargé 92 fois
Yvouille


:btres:
Avatar du membre
dasaquit
Membre fidèle
Membre fidèle
Messages : 165
Inscrit le : 11 septembre 2012
Version d'Excel : 2013/2016 Pro Plus FR

Message par dasaquit » 8 février 2014, 17:20

YES !

C'est exactement ce dont j'avais besoin, t'es super, merci beaucoup.

J'étais en train de tester ceci :
Sub Macro6()
Dim MaFeuilleDeDepart As String 
MaFeuilleDeDepart = ActiveSheet.Name 

    If Sheets("S1").Visible = True Then
    Sheets("Données").Visible = False
    Sheets("S1").Select
    Range("C1").Select

End If
End Sub
Mais ça ne fonctionnait pas..... grrrrr

Encore merci et bon week-end avec ce temps de mouise :evil:

A bientôt pour de nouvelles aventures.....
Avatar du membre
dasaquit
Membre fidèle
Membre fidèle
Messages : 165
Inscrit le : 11 septembre 2012
Version d'Excel : 2013/2016 Pro Plus FR

Message par dasaquit » 8 février 2014, 17:53

Je reposte car en transposant sur mon fichier existant de 52 onglets en copié/collé de ces deux macros j'ai cette ligne en erreur :
Range("DD1") = i
Erreur d'exécution 1004

Que veux dire DD1 s'il te plait ?

Et au retour celle ci :
Sheets(i).Select
Erreur d'exécution 9

Je coince donc de nouveau :-(

Help please :(
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 8'538
Appréciations reçues : 28
Inscrit le : 6 avril 2007
Version d'Excel : 2010

Message par Yvouille » 9 février 2014, 08:09

Salut,

C’est toujours un problème lorsque vous nous fournissez des fichiers exemple qui ne correspondent pas à la réalité :( :(

Si tu m’avais fourni le texte complet du message ‘Erreur d'exécution 1004’, j’en saurais un peu plus :? Si tu m'avais fourni ton fichier exact (avec des données rendues anonymes) j'en saurais juste ce qu'il faut :) Dans ton cas, n’a tu pas mis une protection sur ta feuille ‘Données’ ? Si c’est ça, remplace la Macro5 par
Sub Macro5()
Dim i As String
    
    i = ActiveSheet.Name
    Sheets("Données").Visible = True
    Sheets("Données").Select
    ActiveSheet.Unprotect "dkdk"
    Range("DD1") = i
    Range("A1").Select
    ActiveSheet.Protect "dkdk"

End Sub
Dans les deux lignes concernant le mot de passe ActiveSheet.[Un]protect "dkdk", tu remplaces "dkdk" par ton mot de passe. Si tu n’as pas de mot de passe, tu n’écris tout simplement rien, même pas les guillemets (mais quand même ActiveSheet.[Un]protect).

J’ai placé la référence de la feuille quittée dans la cellule DD1 de la feuille ‘Données’ juste pour qu’elle soit assez éloignée et qu’elle ne fasse pas interférence avec ton boulot. Mais tu peux choisir n’importe quelle autre cellule, du moment que dans la macro suivante, tu ailles chercher cette information dans la bonne cellule.

A te relire.
Yvouille


:btres:
Avatar du membre
dasaquit
Membre fidèle
Membre fidèle
Messages : 165
Inscrit le : 11 septembre 2012
Version d'Excel : 2013/2016 Pro Plus FR

Message par dasaquit » 9 février 2014, 09:58

Bonjour Yvouille,

Désolé de t'importuner, mais comme je te l'avais dit le fichier simplifié ne passait déjà pas avec les 52 onglets, il ne risquait pas de passer complet ;;)

Mais une fois encore tu as raison c'était bien ma feuille qui était bloquée.

Ca marche du tonnerre et te remercie.

Bon dimanche.

David
j
jearol53
Membre fidèle
Membre fidèle
Messages : 194
Inscrit le : 11 novembre 2012
Version d'Excel : 2003 et 2007

Message par jearol53 » 9 février 2014, 18:41

Bonsoir à tous & bonsoir Yvouille

ton fichier " test onglets_v1 " m'est très pratique, mais que faudrait-il modifier pour que je puisse faire apparaître un des oonglets masqués.
Pour les faire apparaître dans l'userform j'ai juste mis " ' " devant " if " et " end if " ça pas de problème, mais si je sélectionne un onglet masqué, il n'apparaît pas. (du moins si cela est possible.

D'avance erci à toi.

Bonne soirée à toi et à tous les férus d'excell.
Roland
Avatar du membre
Yvouille
Passionné d'Excel
Passionné d'Excel
Messages : 8'538
Appréciations reçues : 28
Inscrit le : 6 avril 2007
Version d'Excel : 2010

Message par Yvouille » 9 février 2014, 19:45

Salut Roland,

Il n'est pas nécessaire d'envoyer un message privé : lorsque l'on a participé à une discussion, on est informés automatiquement qu'il y a un nouveau message (à moins que l'on se désinscrive à une discussion).

Je ne comprends pas très bien ton problème, puisqu'il n'y a pas de UserForm dans le fichier de David. Peux-tu donc me fournir ton propre fichier, s'il-te-plait ?

A te relire.
Yvouille


:btres:
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message