comment garder le même format

etienne baude

XLDnaute Nouveau
Bonjour,

Je suis un peu coincé, voilà j'ai créer un fichier dans lequel se trouvre plusieurs onglets, sur l'un des onglet j'ai dans une cellule une formule de ce type =IF(Anomalies!H7>1;Anomalies!$I$7;""), j'aimerais que le résultat affiché aie le même format (couleur) que la cellule originelle comment puis je faire?

d'avance merci pour votre aide
 
Dernière modification par un modérateur:

Modeste

XLDnaute Barbatruc
Re : comment garder le même format

Bonjour etienne baude et bienvenue à toi :)

Pour répondre à ta question, le mieux aurait été de joindre une version allégée et sans données confidentielles de ton fichier. Ce qu'on ne sait pas, c'est comment la couleur de la cellule "originelle" a été appliquée?
Si c'était une Mise en Forme Conditionnelle, ce serait peut-être simple ... mais dès lors, poserais-tu la question?

Pour le reste, à part un bon vieux copier-coller (ou éventuellement une macro), je ne suis pas certain qu'il existe des solutions :confused:
 

Dranreb

XLDnaute Barbatruc
Re : comment garder le même format

Bonjour.
Il n'est pas absolument impossible d'écrire une fonction perso qui mette la couleur d'une cellule spécifiée en paramètre à celle qui la porte. L'astuce c'est de ne pas essayer de le faire durant l'évaluation de la formule ni donc à l'exécution de la Function. Lors de celle ci on ajoute simplement Array(Application.Caller, Param.Interior.Color) à une collection globale nommée Consigne, et dans une Worksheet_Calculate on explore et vide la collection en appliquant cette consigne.
 

Modeste

XLDnaute Barbatruc
Re : comment garder le même format

Re-bonjour,
Bonjour Dranreb,

Voici un bref aperçu du fichier
Ah ben vouiche! ... mais il est tellement bref (et truffé de références invalides), qu'il ne permet guère de comprendre!?
En fonction de quoi décides-tu d'inscrire telle formule ou telle autre en J28 ou F28 :confused:
Dans la feuille Planqualité, en colonne I, y aura-t-il une seule mention "VVDSSD" (ou plusieurs)?

Et puis tu parlais de recopier la couleur ... juste la couleur de police? À quoi sert la macro dans l'objet ThisWorkbook? À changer la couleur de police de chaque cellule dans laquelle on encode une valeur!?

... Enfin bref, des explications sur l'utilisation du fichier, les tenants et aboutissants permettraient peut-être d'y voir plus clair ... là, je sèche, en ce qui me concerne :eek:
 

Dranreb

XLDnaute Barbatruc
Re : comment garder le même format

Ajouté ça dans ThisWorkbook :
VB:
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
MettreLesCouleurs
End Sub
Dans un module standard :
VB:
Option Explicit
Private ConsignesCouleurs As New Collection

Function AvecCouleur(ByVal Cel As Range)
Set Cel = Cel(1, 1)
ConsignesCouleurs.Add Array(Application.Caller, Cel.Interior.Color)
AvecCouleur = Cel.Value
End Function

Sub MettreLesCouleurs()
Dim CC()
While ConsignesCouleurs.Count >= 1
   CC = ConsignesCouleurs(1)
   ConsignesCouleurs.Remove 1
   CC(0).Interior.Color = CC(1)
   Wend
End Sub
Mis une espèce de rose saumon sale à 'Planqualité'!I7:L7,
En 'Fiche de surveillance'!J28 :
Code:
=SI(Planqualité!H7>1;AvecCouleur(Planqualité!$I$7);"")
Et ça m'a bien laissé "VVDSSD" mais sur fond rose sale.
 

Discussions similaires

Statistiques des forums

Discussions
312 165
Messages
2 085 882
Membres
103 009
dernier inscrit
dede972