Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/12/2011, 10h32   #1
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 29
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 29
Points : 10
Points : 10
Par défaut Reporter la mise en forme d'un cellule sur d'autres feuilles.

Bonjour,
J'ai créé une feuille "compétences" dans laquelle j'ai des cases avec du texte en gras et souligné.
Je reporte sur une feuille1 l'ensemble des cases selon la formule: "=Compétences!A4" par exemple. Le texte apparaît mais perd sa mise en forme.
Comment faire pour la conserver? C'est pénible, surtout que je dois répéter l'opération sur une vingtaine de feuilles.
Merci pour votre aide.

Si vous aviez aussi la solution pour qu'elle ait des bordures ou non
Tor_XIII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2011, 11h09   #2
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 915
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 915
Points : 7 218
Points : 7 218
Bonjour,

Il y a 3 manières de mettre en place une mise en forme sur une cellule :
  1. Manuellement
  2. En utilisant une Mise en Forme Conditionnelle (MFC)
  3. En utilisant VBA

Quelle méthode as tu utilisé sur la feuille Compétence?
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2011, 11h12   #3
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Bonjour,

Mets ce code dans le module de la feuille, mais cela ne fonctionnera que pour des formules se référant à UNE cellule d'une AUTRE feuille :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim c As Range, Feuille As String, Cellule As String
    On Error Resume Next
    For Each c In Target
        If c.HasFormula Then
            Feuille = Split(Right(c.Formula, Len(c.Formula) - 1), "!")(0)
            Cellule = Split(Right(c.Formula, Len(c.Formula) - 1), "!")(1)
 
            If Range(Cellule).Count = 1 Then
                Application.EnableEvents = False
                Sheets(Feuille).Range(Cellule).Copy
                c.PasteSpecial xlPasteFormats
                Application.EnableEvents = True
            End If
        End If
    Next
    On Error GoTo 0
End Sub
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/12/2011, 12h02   #4
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 29
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 29
Points : 10
Points : 10
Citation:
Envoyé par Daniel.C Voir le message
Bonjour,

Mets ce code dans le module de la feuille, mais cela ne fonctionnera que pour des formules se référant à UNE cellule d'une AUTRE feuille :
C'est exactement ce qu'il me faut.
Merci beaucoup pour le code, cela dépasse largement mes compétences
je vais tester ça.
Tor_XIII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2011, 12h03   #5
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 29
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 29
Points : 10
Points : 10
Citation:

Quelle méthode as tu utilisé sur la feuille Compétence?
J'ai mis le texte en gras manuellement.
Tor_XIII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2011, 12h22   #6
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 29
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 29
Points : 10
Points : 10
Bon maintenant je vais faire le boulet:
Pour la macro j'ai fait:
Outils/macro/visualbasiceditor.
Ensuite module1 j'ai copier/coller le code...
J'ai essayé de bidouiller enregistrer/réouvrir la feuille mais ça ne change rien.
Je suppose qu'il ya des manips que je n'ai pas faite. C'est la première fois que j'utilise (essaie d'utiliser) des macros.
Merci pour votre patience.
En attendant je chercher
Tor_XIII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/12/2011, 12h49   #7
Expert Confirmé Sénior
 
Homme Daniel
aucune
Inscription : septembre 2011
Messages : 2 004
Détails du profil
Informations personnelles :
Nom : Homme Daniel
Localisation : France, Seine et Marne (Île de France)

Informations professionnelles :
Activité : aucune

Informations forums :
Inscription : septembre 2011
Messages : 2 004
Points : 4 037
Points : 4 037
Citation:
Ensuite module1 j'ai copier/coller le code...
Quand tu es sur la fenêtre Visual Basic, repère, dans la partie fauche, le nom de ton classeur, et en dessous, la feuille où tu veux que les formules entrées aient le format de la cellule cible (celle où tu entres la formule: "=Compétences!A4"). Double clique sur son nom. Colle alors la macro dans la partie droite. Tu peux aussi faire un clic droit sur l'onglet et un clic gauche sur "visualiser le code") tu arrives directement au bon endroit pour coller la macro.

PS. Le format ne s'applique que lorsqu'on entre où qu'on édite une formule. Les anciennes formules ne sont pas concernées par la copie de format.
__________________
Cordialement.

Daniel

Citation:
La plus perdue de toutes les journées est celle où l'on n'a pas ri.
Chamfort
Daniel.C est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/12/2011, 13h03   #8
Candidat au titre de Membre du Club
 
Inscription : septembre 2006
Messages : 29
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 29
Points : 10
Points : 10
SUPER ça marche!!!!!!

Merci d'avoir précisé:
Citation:
PS. Le format ne s'applique que lorsqu'on entre où qu'on édite une formule. Les anciennes formules ne sont pas concernées par la copie de format.
C'est ça qui me posait problème!!!!
Merci
Tor_XIII est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h10.


 
 
 
 
Partenaires

Hébergement Web