XL 2013 [Résolu ] Problème avec macro

HdF59

XLDnaute Nouveau
Bonjour le Forum et merci à ceux qui me donneront l'aide tant espéré.

Ma demande : Je souhaiterai faire fonctionner ce lien hypertexte afin d'aller plus rapidement à la feuille cherchée.
Mon problème :
Je n'arrive pas à insérer en G5 mon menu déroulant et en même temps la formule que j'ai trouvée sur la toile.
J'essaie depuis pas mal de temps mais en vain.
Si je clique sur G5 je vais toujours sur la même feuille.

Si j’insère en G5 mon menu déroulant, la formule disparait

Je vous joins un fichier en exemple pour une meilleur compréhension

Merci d'avance pour votre assistance Pascal
 

Pièces jointes

  • Essai sur Entretien matériel de la maison.xlsm
    224.7 KB · Affichages: 21

chezswan

XLDnaute Occasionnel
Bonjour,

A priori, je me trompe peut-être, mais soit,dans une cellule, tu as un menu déroulant, soit tu as une formule, mais pas les deux.
Ensuite, le fonction rechercheV, ne peut renvoyer qu'à une seule matrice, il n'est donc pas étonnant que ce soit la même feuille qui s'ouvre.

Bref que recherches-tu à faire exactement ?

A plus
 

job75

XLDnaute Barbatruc
Bonjour HdF59, chezswan, Philippe,

En effet créer un lien hypertexte ne présente aucun intérêt, autre solution :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Address = "$G$5" Then Application.Goto _
  Evaluate("'" & Target & "'!" & Application.VLookup(Target, [B2:C23], 2, 0))
End Sub

Sub Retour_Feuille_recherche()
'se lance par Ctrl+R
Application.Goto [G5]
End Sub
Fichier joint.

A+
 

Pièces jointes

  • Essai sur Entretien matériel de la maison(1).xlsm
    234.1 KB · Affichages: 23

HdF59

XLDnaute Nouveau
Bonjour le Forum et mercis à vous Philippe, chezwan et Job75 pour vos réponses.
Les deux fichiers fournis me correspondent. Celui de Philippe à ce retour en A1 qui est intéressant.

Néanmoins, y aurait-il une manière de faire en sorte que le n° de la cellule soit choisie automatiquement à l'ouverture de la feuille - Par exemple, Tondeuse : en J23 . (comme le tableau)
De plus, si je masque les onglets les macros ne fonctionnent plus serait-il possible d'y remédier.

J'espère ne pas vous prendre trop de temps - Toujours est-il, je vous remercie tous les trois pour votre sympathie- Pascal
 
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re,
Néanmoins, y aurait-il une manière de faire en sorte que le n° de la cellule soit choisie automatiquement à l'ouverture de la feuille - Par exemple, Tondeuse : en J23 . (comme le tableau)

remplace le code par celui-ci:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("G5")) Is Nothing And Target <> "" Then
cellule = "" & Application.VLookup(Target, [B2:C23], 2, 0) & ""
Sheets([G5].Text).Select
ActiveSheet.Range(cellule).Activate
End If
End Sub

à+
Philippe
 

job75

XLDnaute Barbatruc
Re,

Vous savez lire HdF59 ? Et tester ?? Ma macro sélectionne toujours la cellule indiquée !!!

Maintenant si la feuille choisie a été masquée il suffit de l'afficher :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Address = "$G$5" Then Sheets(CStr(Target)).Visible = xlSheetVisible: Application.Goto _
  Evaluate("'" & Target & "'!" & Application.VLookup(Target, [B2:C23], 2, 0))
End Sub
Fichier (2), j'ai masqué la feuille "Adoucisseur".

A+
 

Pièces jointes

  • Essai sur Entretien matériel de la maison(2).xlsm
    234.7 KB · Affichages: 17

HdF59

XLDnaute Nouveau
Re le Forum et à vous Job 75 et Philippe

Je suis ravi de vos réponses à chacun. Je vais gagner du temps grâce à vous.
Je suis navré Job de ne pas avoir remarqué cette subtilité que vous m'avez faites.

Je réitère encore mes remerciements pour le temps que vous m'avez donné. Grands MERCIS à vous Pascal
 

HdF59

XLDnaute Nouveau
Bonjour le Forum et à vous Philippe, chezwan et Job75

Comme j'ai dit hier, tout ce passe comme je le souhaite avec ce fichier. Mais, a l'utilisation, je me suis rendu compte que les feuilles masquées dans la barre à onglets, réapparaissent dans cette même barre lorsque je les appelle.
Y a t il un moyen de les laisser masquées.
Je vous joins le fichier pour une meilleur compréhension

Je vous remercie pour votre aide Pascal
 

Pièces jointes

  • Essai 2 sur Entretien matériel .xlsm
    229.1 KB · Affichages: 16

HdF59

XLDnaute Nouveau
bonsoir le Forum et à vous job 75
Effectivement je me suis mal exprimé.
Ma demande n'a pas été bien expliquée. En réalité, je souhaiterai que l'ensemble des onglets soient masqués
sauf, les "recherches et les données". Et de ce fait, je souhaiterai que les feuilles apparaissent à la demande, mais sans qu'elle reviennent dans la barre de feuilles.
Les macros proposées (post#5) feuilles masquées ne fonctionnent pas. Dans mon dernier fichier joint, la chose est flagrante. Je souhaite que cela soit faisable

Grands MERCIS pour votre aide et je m’excuse encore pour m'être mal exprimé Pascal
 

job75

XLDnaute Barbatruc
Re,
Les macros proposées (post#5) feuilles masquées ne fonctionnent pas. Dans mon dernier fichier joint, la chose est flagrante.
Elles fonctionnent très bien, mais les feuilles étant masquées elles ne s'affichent pas, point barre.

Et de ce fait, je souhaiterai que les feuilles apparaissent à la demande, mais sans qu'elle reviennent dans la barre de feuilles.
Là vous délirez totalement cher ami.

Pour terminer je vous signale qu'en français "Acceuil" s'écrit "Accueil".

A+
 

HdF59

XLDnaute Nouveau
Re le Forum et à vous job75
Tout d'abord merci pour cette correction orthographique. -
Donc, si j'ai bien compris pour que ma demande en feuille "Accueil" fonctionne, il y a l'obligation que tous les onglets soient visibles dans la barre hyponyme.
Si cela est le cas, mille excuses, je l'ignorais totalement. Je pensais que cela aurait pu être possible.

Je vous remercie tous pour votre aide et suis navré de mon ignorance: et merci encore pour votre accueil.
Pascal
 

job75

XLDnaute Barbatruc
Re,

Si après affichage vous voulez masquer la feuille quand on la quitte :
Code:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
'Feuil14 et Feuil23 sont les CodeNames des feuilles "Données" et "Accueil"
If Sh.CodeName <> "Feuil14" And Sh.CodeName <> "Feuil23" Then _
  Sh.Visible = xlSheetVeryHidden 'xlSheetHidden si l'on veut pouvoir afficher la feuille manuellement
End Sub
A placer dans ThisWorkbook.

Votre dernier fichier en retour.

A+
 

Pièces jointes

  • Essai 2 sur Entretien matériel .xlsm
    240.1 KB · Affichages: 22

Discussions similaires

Réponses
31
Affichages
930
Réponses
4
Affichages
311

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16