OVH Cloud OVH Cloud

Format de cellule variant avec format d'une autre

1 réponse
Avatar
Manic Miner
Bonjour et merci pour votre aide.

Voila, je souhaite que lorsque le format de la cellule origine change alors
le format de la cellule image change également.
Par exemple si le format de ma cellule B2 varie (Police, couleur,
Bordure,etc ...) alors je souhaite que ceci soit repercuté à l'identique dans
ma cellule D2.
Pour la valeur c'est simple il suffit d'écrire dans D2 la formule (=B2) mais
ceci ne marche pas pour le format.
A priori Excel ne comporte pas de formule qui permette de le faire.
Peut-étre est-il possible de le faire par la création d'une
Fonction VBA, mais la ou le bat blesse c'est que je n'arrive pas ecrire la
synthaxe qui permette de copier le format d'une cellule dans une autre dés
que le format origine varie.
J'ai essayé ceci mais cela ne marche pas

Function MàJ_Format(Cellule As Range)
Application.Volatile

MàJ_Format = Cellule.Value

x = Cellule.Font.Size
y = Cellule.Font.Bold
z = Cellule.Font.Italic

MàJ_Format.Font.Size = x
MàJ_Format.Font.Bold = y
MàJ_Format.Font.Italic = z

End Function

Comment faire ?

Merci.

1 réponse

Avatar
Yoyo
Bonjour Manic,

Tu peux essayer ce code à inclure dans la feuille concernée :

*********
Option Explicit

Dim LastSelection As Range

Private Sub Worksheet_Activate()
Set LastSelection = Selection
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not Intersect(LastSelection, Range("B2")) Is Nothing Then
With Application
.ScreenUpdating = False

Range("B2").Copy
Range("D2").PasteSpecial Paste:=xlPasteFormats

.EnableEvents = False
Target.Select
.EnableEvents = True

.CutCopyMode = False
.ScreenUpdating = True
End With
End If
Set LastSelection = Target
End Sub
*********

Amicalement
Yoyo

"Manic Miner" a écrit dans le message
de news:
Bonjour et merci pour votre aide.

Voila, je souhaite que lorsque le format de la cellule origine change
alors

le format de la cellule image change également.
Par exemple si le format de ma cellule B2 varie (Police, couleur,
Bordure,etc ...) alors je souhaite que ceci soit repercuté à l'identique
dans

ma cellule D2.
Pour la valeur c'est simple il suffit d'écrire dans D2 la formule (²)
mais

ceci ne marche pas pour le format.
A priori Excel ne comporte pas de formule qui permette de le faire.
Peut-étre est-il possible de le faire par la création d'une
Fonction VBA, mais la ou le bat blesse c'est que je n'arrive pas ecrire la
synthaxe qui permette de copier le format d'une cellule dans une autre dés
que le format origine varie.
J'ai essayé ceci mais cela ne marche pas

Function MàJ_Format(Cellule As Range)
Application.Volatile

MàJ_Format = Cellule.Value

x = Cellule.Font.Size
y = Cellule.Font.Bold
z = Cellule.Font.Italic

MàJ_Format.Font.Size = x
MàJ_Format.Font.Bold = y
MàJ_Format.Font.Italic = z

End Function

Comment faire ?

Merci.