Bonjour,
j'ai des onglets avec un nom du type "80.21" (c'est un point)
je veux faire un affichage de 4 onglets en fonction de choix dans une feuille.
Ma feuille "DA", sur lequel j'ai un choix (en G40) entre "IS", "IR" et "BA
IR", et un deuxième choix (en G41) entre "Simplifié" et "Normal".
en fonction de ces choix, je veux que mes pages s'affichent ou soient
invisibles:
IS et Simplifié, alors l'onglet "80.22" est affiché
IS et Normal, alors l'onglet "80.21" est affiché
IR et Simplifié, alors l'onglet "80.12" est affiché
IR et Normal, alors l'onglet "80.11" est affiché
BA IR et Simplifié, alors l'onglet "80.12" est affiché
BA IR et Normal, alors l'onglet "80.11" est affiché
et bien sur, à chaque fois, les 3 autres onglets sont invisible.
j'ai adapté un ancien code (en faisant une formule en N1, avec des SI, pour
afficher le bon oblet), mais le problème est que je n'arrive pas à saisir
80.11 par exemple, il met 80,11 et par conséquent, aucune page ne s'affiche.
Merci de votre aide.
voici mon code, dans ma page "DA":
----
Private Sub worksheet_change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub
Target.Value = UCase(CStr(Target.Value))
Application.ScreenUpdating = False
If Target.Address <> "$N$1" Then Exit Sub
If Target = "80.11" Then
Sheets("80.11").Visible = True
Sheets("80.12").Visible = False
Sheets("80.21").Visible = False
Sheets("80.22").Visible = False
Else
Sheets("80.11").Visible = False
Sheets("80.12").Visible = False
Sheets("80.21").Visible = False
Sheets("80.22").Visible = False
End If
End Sub
--------
Bonjour, Tu devrais essayer de modifier tes paramètres régionaux Changer ton symbole décimal de virgule en point Bien que je n'utiliserais pas le point pour des noms d'onglets, mais plutôt l'endoscore ( _ )
-- Cordialement
"Sunburn" a écrit dans le message de news:
Bonjour, j'ai des onglets avec un nom du type "80.21" (c'est un point) je veux faire un affichage de 4 onglets en fonction de choix dans une feuille. Ma feuille "DA", sur lequel j'ai un choix (en G40) entre "IS", "IR" et "BA IR", et un deuxième choix (en G41) entre "Simplifié" et "Normal". en fonction de ces choix, je veux que mes pages s'affichent ou soient invisibles: IS et Simplifié, alors l'onglet "80.22" est affiché IS et Normal, alors l'onglet "80.21" est affiché IR et Simplifié, alors l'onglet "80.12" est affiché IR et Normal, alors l'onglet "80.11" est affiché BA IR et Simplifié, alors l'onglet "80.12" est affiché BA IR et Normal, alors l'onglet "80.11" est affiché et bien sur, à chaque fois, les 3 autres onglets sont invisible.
j'ai adapté un ancien code (en faisant une formule en N1, avec des SI, pour afficher le bon oblet), mais le problème est que je n'arrive pas à saisir 80.11 par exemple, il met 80,11 et par conséquent, aucune page ne s'affiche. Merci de votre aide.
voici mon code, dans ma page "DA": ---- Private Sub worksheet_change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub Target.Value = UCase(CStr(Target.Value)) Application.ScreenUpdating = False If Target.Address <> "$N$1" Then Exit Sub
If Target = "80.11" Then Sheets("80.11").Visible = True Sheets("80.12").Visible = False Sheets("80.21").Visible = False Sheets("80.22").Visible = False
Else Sheets("80.11").Visible = False Sheets("80.12").Visible = False Sheets("80.21").Visible = False Sheets("80.22").Visible = False End If End Sub --------
Bonjour,
Tu devrais essayer de modifier tes paramètres régionaux
Changer ton symbole décimal de virgule en point
Bien que je n'utiliserais pas le point pour des noms d'onglets, mais plutôt
l'endoscore ( _ )
--
Cordialement
jpmonnier-nospam@neuf.fr
"Sunburn" <Sunburn@discussions.microsoft.com> a écrit dans le message de
news:1E67EAAF-FF47-419F-89EB-E3F6A226AB24@microsoft.com...
Bonjour,
j'ai des onglets avec un nom du type "80.21" (c'est un point)
je veux faire un affichage de 4 onglets en fonction de choix dans une
feuille.
Ma feuille "DA", sur lequel j'ai un choix (en G40) entre "IS", "IR" et "BA
IR", et un deuxième choix (en G41) entre "Simplifié" et "Normal".
en fonction de ces choix, je veux que mes pages s'affichent ou soient
invisibles:
IS et Simplifié, alors l'onglet "80.22" est affiché
IS et Normal, alors l'onglet "80.21" est affiché
IR et Simplifié, alors l'onglet "80.12" est affiché
IR et Normal, alors l'onglet "80.11" est affiché
BA IR et Simplifié, alors l'onglet "80.12" est affiché
BA IR et Normal, alors l'onglet "80.11" est affiché
et bien sur, à chaque fois, les 3 autres onglets sont invisible.
j'ai adapté un ancien code (en faisant une formule en N1, avec des SI,
pour
afficher le bon oblet), mais le problème est que je n'arrive pas à saisir
80.11 par exemple, il met 80,11 et par conséquent, aucune page ne
s'affiche.
Merci de votre aide.
voici mon code, dans ma page "DA":
----
Private Sub worksheet_change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub
Target.Value = UCase(CStr(Target.Value))
Application.ScreenUpdating = False
If Target.Address <> "$N$1" Then Exit Sub
If Target = "80.11" Then
Sheets("80.11").Visible = True
Sheets("80.12").Visible = False
Sheets("80.21").Visible = False
Sheets("80.22").Visible = False
Else
Sheets("80.11").Visible = False
Sheets("80.12").Visible = False
Sheets("80.21").Visible = False
Sheets("80.22").Visible = False
End If
End Sub
--------
Bonjour, Tu devrais essayer de modifier tes paramètres régionaux Changer ton symbole décimal de virgule en point Bien que je n'utiliserais pas le point pour des noms d'onglets, mais plutôt l'endoscore ( _ )
-- Cordialement
"Sunburn" a écrit dans le message de news:
Bonjour, j'ai des onglets avec un nom du type "80.21" (c'est un point) je veux faire un affichage de 4 onglets en fonction de choix dans une feuille. Ma feuille "DA", sur lequel j'ai un choix (en G40) entre "IS", "IR" et "BA IR", et un deuxième choix (en G41) entre "Simplifié" et "Normal". en fonction de ces choix, je veux que mes pages s'affichent ou soient invisibles: IS et Simplifié, alors l'onglet "80.22" est affiché IS et Normal, alors l'onglet "80.21" est affiché IR et Simplifié, alors l'onglet "80.12" est affiché IR et Normal, alors l'onglet "80.11" est affiché BA IR et Simplifié, alors l'onglet "80.12" est affiché BA IR et Normal, alors l'onglet "80.11" est affiché et bien sur, à chaque fois, les 3 autres onglets sont invisible.
j'ai adapté un ancien code (en faisant une formule en N1, avec des SI, pour afficher le bon oblet), mais le problème est que je n'arrive pas à saisir 80.11 par exemple, il met 80,11 et par conséquent, aucune page ne s'affiche. Merci de votre aide.
voici mon code, dans ma page "DA": ---- Private Sub worksheet_change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub Target.Value = UCase(CStr(Target.Value)) Application.ScreenUpdating = False If Target.Address <> "$N$1" Then Exit Sub
If Target = "80.11" Then Sheets("80.11").Visible = True Sheets("80.12").Visible = False Sheets("80.21").Visible = False Sheets("80.22").Visible = False
Else Sheets("80.11").Visible = False Sheets("80.12").Visible = False Sheets("80.21").Visible = False Sheets("80.22").Visible = False End If End Sub --------
Modeste
Bonsour® Sunburn avec ferveur ;o))) vous nous disiez :
Private Sub worksheet_change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub NomOnglet= Application.Substitute(UCase(CStr(Target.Value)),Chr(44),".") Application.ScreenUpdating = False If Target.Address <> "$N$1" Then Exit Sub
Private Sub worksheet_change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub
NomOnglet= Application.Substitute(UCase(CStr(Target.Value)),Chr(44),".")
Application.ScreenUpdating = False
If Target.Address <> "$N$1" Then Exit Sub
Private Sub worksheet_change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub NomOnglet= Application.Substitute(UCase(CStr(Target.Value)),Chr(44),".") Application.ScreenUpdating = False If Target.Address <> "$N$1" Then Exit Sub
Merci, ça fonctionne. Touefois, est-il possible d'avoir ce code dans une macro "générique", car par sécurité, je voudrais que le test se fasse sur un autre onglet "parametres", cellule A1. de plus, j'ai une macros qui me permet de voir les pages 80, 80.11, 80.12, 80.21, 80.22, 80.50, 80.60 et 80.41, et je veux que la macro qui n'affiche que le bon des 4 onglets 80.11,12,21,22 et les autres onglets, donc je pensais rappeler cette macro à ce moment là. J'espère que je suis compréhensible. Merci
"Modeste" a écrit :
Private Sub worksheet_change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub NomOnglet= Application.Substitute(UCase(CStr(Target.Value)),Chr(44),".") Application.ScreenUpdating = False If Target.Address <> "$N$1" Then Exit Sub
Merci, ça fonctionne.
Touefois, est-il possible d'avoir ce code dans une macro "générique", car
par sécurité, je voudrais que le test se fasse sur un autre onglet
"parametres", cellule A1.
de plus, j'ai une macros qui me permet de voir les pages 80, 80.11, 80.12,
80.21, 80.22, 80.50, 80.60 et 80.41, et je veux que la macro qui n'affiche
que le bon des 4 onglets 80.11,12,21,22 et les autres onglets, donc je
pensais rappeler cette macro à ce moment là.
J'espère que je suis compréhensible.
Merci
"Modeste" a écrit :
Private Sub worksheet_change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub
NomOnglet= Application.Substitute(UCase(CStr(Target.Value)),Chr(44),".")
Application.ScreenUpdating = False
If Target.Address <> "$N$1" Then Exit Sub
Merci, ça fonctionne. Touefois, est-il possible d'avoir ce code dans une macro "générique", car par sécurité, je voudrais que le test se fasse sur un autre onglet "parametres", cellule A1. de plus, j'ai une macros qui me permet de voir les pages 80, 80.11, 80.12, 80.21, 80.22, 80.50, 80.60 et 80.41, et je veux que la macro qui n'affiche que le bon des 4 onglets 80.11,12,21,22 et les autres onglets, donc je pensais rappeler cette macro à ce moment là. J'espère que je suis compréhensible. Merci
"Modeste" a écrit :
Private Sub worksheet_change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Intersect(Target, Range("N1")) Is Nothing Then Exit Sub NomOnglet= Application.Substitute(UCase(CStr(Target.Value)),Chr(44),".") Application.ScreenUpdating = False If Target.Address <> "$N$1" Then Exit Sub