Rester sur la page actuelle

Bonjour a tous,

je suis vraiment un débutant et je vous remercie avant tout pour l'aide que vous pouvez m'apporter.

je vous donne mon code et je vous explique par la suite

Sub CCACHER_SOL()
Rows("13:14").Select
Selection.EntireRow.Hidden = True
Sheets("RAPPORT DE VISITE_1").Select
Rows("23:32").Select
Selection.EntireRow.Hidden = True
Sheets("RAPPORT DE VISITE_2").Select
Rows("21:30").Select
Selection.EntireRow.Hidden = True
End Sub
________________________________________________

Sub VVISIBLE_SOL()
Rows("13:14").Select
Selection.EntireRow.Hidden = False
Sheets("RAPPORT DE VISITE_1").Select
Rows("22:33").Select
Selection.EntireRow.Hidden = False
Sheets("RAPPORT DE VISITE_2").Select
Rows("20:31").Select
Selection.EntireRow.Hidden = False
End Sub

Je voudrais quand j'appuie sur le bouton cacher ou visible je reste sur la page ou je suis.

merci

Bonjour,

Comme ceci, en supposant que la page actuelle est une 3ème feuille:

Sub CCACHER_SOL()
    'Déclaration des noms de feuille en variables
    Dim f1 As Worksheet, f2 As Worksheet, f3 As Worksheet
    Application.ScreenUpdating = False 'Evite les affichages successifs à l'écran et augmente la vitesse d'exécution

    'Attribution des variables au nom des feuilles, avec mise en mémoire
    Set f1 = Sheets(ActiveSheet.Name)
    Set f2 = Sheets("RAPPORT DE VISITE_1")
    Set f3 = Sheets("RAPPORT DE VISITE_2")

    'Masquage des lignes dans chaque feuille
    f1.Rows("13:14").EntireRow.Hidden = True
    f2.Rows("23:32").EntireRow.Hidden = True
    f3.Rows("21:30").EntireRow.Hidden = True

    'Libération de la mémoire
    Set f1 = Nothing
    Set f2 = Nothing
    Set f3 = Nothing
End Sub

Sub VVISIBLE_SOL()
    'Déclaration des noms de feuille en variables
    Dim f1 As Worksheet, f2 As Worksheet, f3 As Worksheet
    Application.ScreenUpdating = False 'Evite les affichages successifs à l'écran et augmente la vitesse d'exécution

    'Attribution des variables au nom des feuilles, avec mise en mémoire
    Set f1 = Sheets(ActiveSheet.Name)
    Set f2 = Sheets("RAPPORT DE VISITE_1")
    Set f3 = Sheets("RAPPORT DE VISITE_2")

    'Démasquage des lignes dans chaque feuille
    f1.Rows("13:14").EntireRow.Hidden = False
    f2.Rows("22:33").EntireRow.Hidden = False
    f3.Rows("20:31").EntireRow.Hidden = False

    'Libération de la mémoire
    Set f1 = Nothing
    Set f2 = Nothing
    Set f3 = Nothing
End Sub

Cdlt

Tout d'abord je voulais te remercier pour ton aide.

Alors mon souhait c'est quand je vais visité une maison ou appartement que je puisse sélectionner les travaux a effectuer en fonction de la pièce:

1 - Quand j'ouvre mon fichier Excel, j'ai qu'une seul feuille qui s'appel CARACTERISTIQUE

2 - Sur la feuil CARACTERISTIQUE je choisis les pièces dont j'ai besoin.

3 - Quand je sélectionne "salon" "cuisine" "WC", j'ai mes feuil SALON, CUISINE et WC qui s'affiche

4 - Prenons l'exemple de la feuil SALON

5 - Si il y a des travaux de "SOL" "MUR" "PLAFOND", des lignes attitrer à ça s'affiche et doit s'afficher dans le "rapport de visite_1" et "rapport de visite_2"

Tout ca en ayant le fichier protéger, des feuilles protéger par mot de passe sauf pour les case en vert

Et dans la feuil "rapport de visite_1" et "rapport de visite_2" j'aimerai avoir un bouton imprimer et un bouton envoyer par Mail

J'espère que tu as compris mon souhait

Bonjour,

Donc, si j'ai bien compris, quand vous sélectionnez une pièce, la feuille de même nom doit s'afficher, c'est bien ça?

si oui, il suffit d'ajouter une ligne après avoir rendu la feuille visible, exemple pour le SALON:

Sub VISIBLE_SALON()
    Sheets("SALON").Visible = True
    Sheets("SALON").Activate
End Sub

A faire pareil pour les autres feuilles.

Cdlt

Bonjour,

c'est bien ça.

et quand je suis sur la feuil SALON et que je click sur SOL MUR PLAFOND je dois rester sur la feuil active

cordialement

Bonjour,

Par exemple si vous êtes sur la feuille "SALON" le code pour les boutons du "Plafond" sont:

Sub CACHER_PLAFOND()
    Dim f1 As Worksheet, f2 As Worksheet, f3 As Worksheet
    Application.ScreenUpdating = False
    Set f1 = Sheets(ActiveSheet.Name)
    Set f2 = Sheets("RAPPORT DE VISITE_1")
    Set f3 = Sheets("RAPPORT DE VISITE_2")
    f2.Rows("45:51").EntireRow.Hidden = True
    f3.Rows("43:49").EntireRow.Hidden = True
    f1.Rows("17:18").EntireRow.Hidden = True
    f1.Select
    Set f1 = Nothing
    Set f2 = Nothing
    Set f3 = Nothing
End Sub

Sub VISIBLE_PLAFOND()
    Dim f1 As Worksheet, f2 As Worksheet, f3 As Worksheet
    Application.ScreenUpdating = False
    Set f1 = Sheets(ActiveSheet.Name)
    Set f2 = Sheets("RAPPORT DE VISITE_1")
    Set f3 = Sheets("RAPPORT DE VISITE_2")
    f2.Rows("45:51").EntireRow.Hidden = False
    f3.Rows("43:49").EntireRow.Hidden = False
    f1.Rows("17:18").EntireRow.Hidden = False
    Set f1 = Nothing
    Set f2 = Nothing
    Set f3 = Nothing
End Sub

A reproduire pour les autres éléments.

Cdlt

C'est parfait.

sur la feuil "RAPPORT 1" j'aimerai que :

1 - si la feuil SALON, SEJOUR etc. n'est pas choisi dans la feuil "CARACTERISTIQUE " il faudrait que dans la feuil "rapport 1" la colonne correspondante ne s'affiche pas et mon problème et le suivant:

exemple dans la feuil SALON il y a le sol mais pas le mur et dans la feuil SEJOUR il n'y a pas le sol mais il y a le mur comment je pourrais grisé ca

Bonjour

Utilisez les "Mises en formes conditionnelles", exemple griser toutes les cellules vides de la partie "SOL", se mettre sur la cellule D23, dans le bandeau sur l'onglet "Accueil", cliquer sur 'Mise en forme conditionnelle" et saisissez la formule suivante: =D23="" et dans appliquer à , sélectionnez la plage D23:W32

rochdi

Cdlt

Bonjour,

Merci pour ta réponse enfaite dans mon tableau j'ai aucune cellule vide juste il faudrait comparer si la cellule est différente avec le titre de la colonne B.

- si oui mettre l'écriture en rouge de la cellule concerné

- si non grisé la cellule concerné

6visite-chantier.zip (323.17 Ko)

Bonjour,

C'est le même principe que mon dernier post, utilisez les MFC, exemple pour le tableau "SOL"

rochdi

Cdlt

Rechercher des sujets similaires à "rester page actuelle"