Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion maval
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

maval

XLDnaute Barbatruc
Bonjour,

Je recherche un code que si je coche mon CheckBox en cliquant sur une ville "Charpe" j'ouvre l'onglet qui correspond

Je vous remercie d'avance de votre aide

Cordialement

Maval
 

Pièces jointes

Re : CheckBox

Bonsoir maval,

Si j'ai bien cerné le problème, voici ma solution :

Code:
Sub Selection()
  ActiveSheet.Shapes("Groupe_Num_Dept").Left = 75
  ActiveSheet.Shapes("Groupe_Num_Dept").Top = 90

 Dim n As Integer, Pref As String, Teste As String
 [AD23] = Mid(Application.Caller, InStr(Application.Caller, "-") + 1)
' ôter toutes les couleurs
For n = 1 To ActiveSheet.Shapes.Count - 3
ActiveSheet.Shapes(n).Fill.ForeColor.SchemeColor = 9
Next n
'  ci-dessous on colorie tous les dépt concernés en bleu
Select Case [AD23]


Case 22, 29, 35, 56     '(Bretagne)
ActiveSheet.Shapes("FR-22").Fill.ForeColor.SchemeColor = 4
ActiveSheet.Shapes("FR-29").Fill.ForeColor.SchemeColor = 4
ActiveSheet.Shapes("FR-35").Fill.ForeColor.SchemeColor = 4
ActiveSheet.Shapes("FR-56").Fill.ForeColor.SchemeColor = 4



End Select

On Error Resume Next
' et on colorie le dépt cliqué en vert


choix = Format(CStr([AD23]), "00")
ActiveSheet.Shapes("FR-" & choix).Fill.ForeColor.SchemeColor = 3

If ActiveSheet.CheckBox1.Value = True Then
  Pref = LTrim(Replace(ActiveSheet.Shapes("FR-" & choix).TextFrame2.TextRange.Characters.Text, vbLf, ""))
  Pref = LTrim(Mid(Pref, 3))
  Sheets(Pref).Activate
End If

End Sub
J'ai simplement ajouté les 5 dernières lignes sans autre modification du code.

Cordialement.

Edit : j'ai oublié de préciser qu'il est impératif que le texte des noms de préfectures dans les images soit absolument identique aux noms des onglets, ou vice et versa.
 
Dernière édition:
Re : CheckBox

Bonjour Papou-net

Simple et Nickel je te remercie beaucoup Papou.

J'aurai besoin d'un conseil. J'ai environ une trentaine de feuille sur mon classeur j’aimerai masquer toute les feuilles sauf la première et pouvoir les ouvrir lorsque je click dessus les villes correspondant.

Aurai tu une solution a mon problème?

Bonne journée

Maval
 
Re : CheckBox

Bonjour,

pour masquer toutes les feuilles sauf la première :
Code:
Option Explicit
Sub test()
Dim i As Integer
For i = 2 To Sheets.Count
    Sheets(i).Visible = xlSheetHidden
Next i
End Sub

bonne journée
@+
 
Re : CheckBox

Re,

eh bien, comme dit plus haut, avant l'activation tu rends visible la feuille.....
Code:
If ActiveSheet.CheckBox1.Value = True Then
  Pref = LTrim(Replace(ActiveSheet.Shapes("FR-" & choix).TextFrame2.TextRange.Characters.Text, vbLf, ""))
  Pref = LTrim(Mid(Pref, 3))
'ici tu rends visible la feuille.....   
Sheets(Pref).Activate
End If
 
Re : CheckBox

Re,

Si je met le code comme ceci.

Code:
If ActiveSheet.CheckBox1.Value = True Then
  Pref = LTrim(Replace(ActiveSheet.Shapes("FR-" & choix).TextFrame2.TextRange.Characters.Text, vbLf, ""))
  Pref = LTrim(Mid(Pref, 3))
'ici tu rends visible la feuille.....


With Sheets("Vannes")
    .Visible = xlSheetVisible
    .Activate
End With

Sheets(Pref).Activate
End If

Sa fonctionne que sur la feuille Vannes ?

@+
 
Re : CheckBox

Re,

bah oui forcement.... modifie ainsi :

Code:
If ActiveSheet.CheckBox1.Value = True Then
  Pref = LTrim(Replace(ActiveSheet.Shapes("FR-" & choix).TextFrame2.TextRange.Characters.Text, vbLf, ""))
  Pref = LTrim(Mid(Pref, 3))
'ici tu rends visible la feuille.....

With Sheets(Pref)
    .Visible = xlSheetVisible
    .Activate
End With

End If
 
Re : CheckBox

Bonjour

J'ai un petit souci avec mon code auquel Papou-Net et Pierrot mon aider a finaliser et que je remercie au passage.
Lorsque je masque les feuilles de mon classeur avec ce code:

Et celui ci sur la feuille"France"
Code:
Private Sub CommandButton1_Click()
If CommandButton1.Caption = "Masquer les feuilles" Then
    CommandButton1.Caption = "Afficher les feuilles"
    ' ici opérations à exécuter
Else

    CommandButton1.Caption = "Masquer les feuilles"
    ' ici opérations à exécuter
End If
masquer_démasquer
End Sub
Dans un module
Code:
Sub masquer_démasquer()
Dim oSh As Worksheet
Application.ScreenUpdating = False
   For Each oSh In ThisWorkbook.Sheets
      If oSh.Name <> "France" And oSh.Name <> "Fr_Régions" Then oSh.Visible = Not oSh.Visible
   Next oSh
Application.ScreenUpdating = True
End Sub

Aucun problème si je clic une ville de ma carte de France la feuille correspondant a la ville souvre avec ce code de Papou-Net:
Code:
If ActiveSheet.CheckBox1.Value = True Then
  Pref = LTrim(Replace(ActiveSheet.Shapes("FR-" & choix).TextFrame2.TextRange.Characters.Text, vbLf, ""))
  Pref = LTrim(Mid(Pref, 3))
'ici tu rends visible la feuille.....
With Sheets(Pref)
    .Visible = xlSheetVisible
    .Activate
End With

Sheets(Pref).Activate

Jusqu'ici tous va bien!
Mon problème si je veut masquer les feuilles que j'ai ouverte a l'aide de mon code je ne peut plus?
Si vous avais une idée je vous remercie d'avance

Cordialement

Maval
 
Dernière édition:
Re : CheckBox

Re,

Mon problème si je veut masquer les feuilles que j'ai ouverte a l'aide de mon code je ne peut plus?

c'est du code ci-dessous dont tu parles ?

Code:
If oSh.Name <> "Accueil" And oSh.Name <> "recap" Then oSh.Visible = Not oSh.Visible

si c'est le cas, normal, masque ou démasque toutes les feuilles différentes de "Accueil" et "recap" selon leur état. Peut être nous indiquer qu'est ce qui ne va pas exactement...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
211
Réponses
6
Affichages
636
Réponses
2
Affichages
177
Réponses
9
Affichages
264
Réponses
12
Affichages
407
  • Question Question
Microsoft 365 couleur et ligne
Réponses
6
Affichages
291
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…