Afficher plusieurs onglet dans une feuille

frusciantefan

XLDnaute Junior
Bonjour,

Encore un petit souci auquel je fais face :

Je prends l'exemple ci joins.

Onglet 1 : cellule Q2.

J'ai une liste déroulante avec les mois.
Je souhaiterais que toute la feuille se mette à jour sur le bon mois, sans passer par une sélection d'onglet.

Cette manipulation est elle possible si les différents onglets ne sont pas identique en terme de mise en page?

Merci pour votre aide!
 

Pièces jointes

  • Emploi du Temps .zip
    6.4 KB · Affichages: 45

Papou-net

XLDnaute Barbatruc
Re : Afficher plusieurs onglet dans une feuille

Bonjour frusciantephan,

Vois si ton fichier modifié te convient.

Pour que ça fonctionne correctement, j'ai créé une feuille "Menu", et j'ai déplacé les références de mois et colonnes R et S, que j'ai masquées.

Espérant avoir répondu.

Cordialement.
 

Pièces jointes

  • Fruscientephan .zip
    14.3 KB · Affichages: 89

frusciantefan

XLDnaute Junior
Re : Afficher plusieurs onglet dans une feuille

Hello Papou

C'est exactement ce que je cherche mais peux tu m'expliquer comment tu as proceder?

En effet, j'ai donné ce fichier a titre d'exemple mais je dois le readapter à mes besoin pour des fichiers au travail (que je ne peux envoyer pour des raisons de confidentialités).

Si la base n'est pas exactement pareil, ce systeme marche quand meme?

Merci pour ton aide!!!

FF
 

Papou-net

XLDnaute Barbatruc
Re : Afficher plusieurs onglet dans une feuille

Si la base n'est pas exactement pareil, ce systeme marche quand meme?

Bonsoir frusciantephan,

Oui, ça marchera quelle que soit la base, mais attention :

- il te faudra modifier la zone de copie que j'ai arbitrairement fixée à "A1:p100".

- si les zones à copier sont différentes d'une feuille mensuelle à une autre, il faut définir la plage à copier sur la plus grande de façon à éviter des données résiduelles sur la feuille Menu.

- il ne faut pas que les listes des mois (colonnes Q, R et S) soient situées dans la plage à copier. Si tu dois les déplacer, il faut modifier toutes les références attachées dans le code.

Si tu as besoin d'autres infos, n'hésites pas.

Bonne soirée.

Cordialement.
 

Papou-net

XLDnaute Barbatruc
Re : Afficher plusieurs onglet dans une feuille

Papou, je ne retrouve pas la zone copie???

C'est une macro?

Bonsoir frusciantephan,

La zone de copie dont je te parle est définie dans la macro événementielle de la feuille "Menu" (voir ligne en rouge dans l'exemple ci-dessous) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Erreur
If Not Target.Address = "$Q$1" Then Exit Sub
Application.ScreenUpdating = False
Application.DisplayAlerts = False
mois = CStr(Range("R1"))
[COLOR="Red"]Sheets(mois).Range("A1:P100").Copy[/COLOR]
Range("A1").PasteSpecial xlPasteAll
Range("Q1").Select
Application.CutCopyMode = False
Application.DisplayAlerts = True
Application.ScreenUpdating = True
Exit Sub
Erreur:
MsgBox "La feuille " & Range("Q1") & " n'existe pas !", vbOKOnly + vbExclamation, "FEUILLE INEXISTANTE"
End Sub

Restant à ton écoute.

Cordialement.
 

frusciantefan

XLDnaute Junior
Re : Afficher plusieurs onglet dans une feuille

Salut Papou!

Je reviens vers toi pour une question.
J'ai reussi a mettre en place ce que je voulais faire SAUF un point.

Je souhaite proteger la feuille sur certaines cellules, celle qui comprend les plus grosses formules.

Or lorsque la copie se fait dans le "menu principal", tout marche bien mais la protection ne fonctionne pas...

Comment puis je y remédier?

Merci pour ton aide!

Stephane
 

Papou-net

XLDnaute Barbatruc
Re : Afficher plusieurs onglet dans une feuille

Salut Papou!

Je reviens vers toi pour une question.
J'ai reussi a mettre en place ce que je voulais faire SAUF un point.

Je souhaite proteger la feuille sur certaines cellules, celle qui comprend les plus grosses formules.

Or lorsque la copie se fait dans le "menu principal", tout marche bien mais la protection ne fonctionne pas...

Comment puis je y remédier?

Merci pour ton aide!

Stephane

Bonjour frusciantephan,

Tu as 2 solutions :

La première, et la plus simple, est que tu actives la protection sur la feuille Modèle. La feuille copiée sera ainsi également protégée.

La deuxième, tu ajoutes en fin de ta macro la ligne suivante :

Code:
ActiveSheet.Protect "mdp", userinterfaceonly:=True

Tu remplaces (ou tu supprimes éventuellement) mdp par ton mot de passe.

UserInterfaceOnly protège la feuille contre toute saisie non autorisée pour l'utilisateur, mais n'empêche pas les macros de modifier des cellules protégées.

Espérant avoir répondu.

Cordialement.
 
Dernière édition:

frusciantefan

XLDnaute Junior
Re : Afficher plusieurs onglet dans une feuille

Papou,

Je remonte le sujet car je fais face a un problème sur les protection de feuille.

Dans mon menu principal se colle donc 3 possibilités de formulaires.
Ces formulaires sont protégés dans les onglets cachés, sur certaines cellules (celles comprenant les formules de calculs, dont découle l'automatisation).

Deux solutions s'offrent à moi :

1- Je ne protège pas le menu principal (je n'utilise pas ton code dans le VB): la protection initiale ne se copie pas, du coup les utilisateurs du formulaire peuvent écraser les formules.

2- Je protège le menu principal (j'utilise ton code dans le VB) : la protection fonctionne très bien MAIS

a)Je suis obligé d'ôter une première fois la protection sur le menu principal pour que les differents formulaires s'affichent. (Si je n'ote pas la protection, j'ai le message d'erreur comme quoi "la feuille "xxx" n'existe pas")

b) pour que les différents champs des formulaires soient saisissables.

Comment puis je donc faire pour que la copie fonctionne du premier coup, sans passer par l'étape de retrait de protection de la feuille, et bien sur faire en sorte que les cellules protéger sur les formulaires en dur le reste bien??

Ce formulaire a vocation a être rempli par d'autres personnes. Je ne souhaite pas qu'ils passent par la phase 2a) pour le remplir.

Merci pour ton aide :)

FF
 

Discussions similaires

Statistiques des forums

Discussions
312 503
Messages
2 089 059
Membres
104 014
dernier inscrit
Aurélie MONTEIL