Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

comment reformuler avec VBA

3 réponses
Avatar
Emile63
Bonjour a tous,

J'aimerais reformuler dynamiquement la formule en dur ci-apr=E8s.=20
Formula1:=3D"=3D$A2<>$A3"
Utilis=E9e dans un format conditionnel, j'aimerais faire une macro qui d=E9=
marre depuis l'endroit qui est cliqu=E9 sur la feuille de calcul (Et pas fo=
rc=E9ment A2).

A partir de:
MaCellule =3D ActiveCell.Address(RowAbsolute:=3DFalse) ' r=E9ponse par exem=
ple: $C8

J'aimerais que $C8 soit d=E9cortiqu=E9, C8+1 pour devenir le champ "=3D$C8<=
>$C9" que j'attribuerais alors a un nom (MaFormule), et replacerais dans ma=
ligne de format conditionelle, Formula1: MaFormule

Malheureusement je brode mais sans r=E9sultat. Quelqu'un pourrait me venir =
en aide? ;-)

Merci d'avance pour votre sollicitude.
Cordialement,

Emile

3 réponses

Avatar
Jacky
Bonjour,

Je suis pas certain d'avoir compris ce que tu souhaites obtenir...
Ceci met en place un format conditionnelle dans la colonne active à partir de la ligne de la cellule active
jusqu'a la dernière ligne de la colonne active
'----------------
Sub jj()
Dim fin As Long, debut As Long, col As Long, Plage As Range
col = ActiveCell.Column
Columns(col).FormatConditions.Delete
fin = Cells(Rows.Count, col).End(xlUp).Row
debut = ActiveCell.Row
If debut <= fin Then
Set Plage = Range(Cells(debut, col), (Cells(fin, col)))
Plage.FormatConditions.Add Type:=xlExpression, Formula1:="=" _
& ActiveCell.Address(0, 1) & "<>" & ActiveCell.Offset(1, 0).Address(0, 1)
Plage.FormatConditions(1).Interior.ColorIndex = 4 '4=vert
End If
End Sub
'---------------
--
Salutations
JJ


"Emile63" a écrit dans le message de news:

Bonjour a tous,

J'aimerais reformuler dynamiquement la formule en dur ci-après.
Formula1:="=$A2<>$A3"
Utilisée dans un format conditionnel, j'aimerais faire une macro qui démarre depuis l'endroit qui est cliqué
sur la feuille de calcul (Et pas forcément A2).

A partir de:
MaCellule = ActiveCell.Address(RowAbsolute:úlse) ' réponse par exemple: $C8

J'aimerais que $C8 soit décortiqué, C8+1 pour devenir le champ "=$C8<>$C9" que j'attribuerais alors a un nom
(MaFormule), et replacerais dans ma ligne de format conditionelle, Formula1: MaFormule

Malheureusement je brode mais sans résultat. Quelqu'un pourrait me venir en aide? ;-)

Merci d'avance pour votre sollicitude.
Cordialement,

Emile
Avatar
DanielCo
Bonjour,
Un peu au hasard :
MaCellule = ActiveCell.Offset(1).Address(RowAbsolute:úlse)
Daniel


Bonjour a tous,

J'aimerais reformuler dynamiquement la formule en dur ci-après.
Formula1:="=$A2<>$A3"
Utilisée dans un format conditionnel, j'aimerais faire une macro qui démarre
depuis l'endroit qui est cliqué sur la feuille de calcul (Et pas forcément
A2).

A partir de:
MaCellule = ActiveCell.Address(RowAbsolute:úlse) ' réponse par exemple: $C8

J'aimerais que $C8 soit décortiqué, C8+1 pour devenir le champ "=$C8<>$C9"
que j'attribuerais alors a un nom (MaFormule), et replacerais dans ma ligne
de format conditionelle, Formula1: MaFormule

Malheureusement je brode mais sans résultat. Quelqu'un pourrait me venir en
aide? ;-)

Merci d'avance pour votre sollicitude.
Cordialement,

Emile
Avatar
Emile63
Bonjour Jacky et DanielCo,

Merci pour votre aide et solutions.
J'ai fait mon affaire avec la proposition de Jacky:
="& ActiveCell.Address(0, 1) & "<>" & ActiveCell.Offset(1, 0).Address(0, 1)

Merci beaucoup et bonne journée à tous.
Emile