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

récupérer automatiquement les paramètres de formatage d'une cellule

12 réponses
Avatar
Noisette
bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer, à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu "format",
puis "Cellule" gràce aux deux lignes suivantes:

SendKeys "%(t~)", True
SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante, attribuer
les paramétres de formatage que je viens de déterminer à une ou plusieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
With ActiveCell.Font
CoulPolCode = .ColorIndex
End With
With ActiveCell.Interior
CoulMotifCode = .ColorIndex
Tramcode = .pattern
End With

je veux récupérer ces paramètres pour les insérer, de façon automatique,
dans une autre macro qui aura à formater certaines cellules en fonction du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront (ou
qui essaieront )
Noisette

10 réponses

1 2
Avatar
LSteph
Bonjour,

variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si tu donne le code complet on y verra.


Sinon avec ou sans macro
Copier Coller spécial format
ferait les choses plus simplement.

Si tant est que tu veuilles procéder par macro la première semble un peu
inutile puisqu'il suffirait de savoir quelle cellule tu as reformatée et
suivant les propriétés que tu veux reprendre pour une autre plage
utiliser directement celles de cette cellule.

Cordialement.

--
lSteph


bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer, à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu "format",
puis "Cellule" gràce aux deux lignes suivantes:

SendKeys "%(t~)", True
SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante, attribuer
les paramétres de formatage que je viens de déterminer à une ou plusieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
With ActiveCell.Font
CoulPolCode = .ColorIndex
End With
With ActiveCell.Interior
CoulMotifCode = .ColorIndex
Tramcode = .pattern
End With

je veux récupérer ces paramètres pour les insérer, de façon automatique,
dans une autre macro qui aura à formater certaines cellules en fonction du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront (ou
qui essaieront )
Noisette







Avatar
francois.forcet
On 5 fév, 08:01, "Noisette" wrote:
bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer, à
la volée,les caractériques du formatage d'une cellule et ensuite de le s
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu "format ",
puis "Cellule" gràce aux deux lignes suivantes:

  SendKeys "%(t~)", True
  SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante, at tribuer
les paramétres de formatage que je viens de déterminer à une ou plus ieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
  With ActiveCell.Font
          CoulPolCode = .ColorIndex
      End With
      With ActiveCell.Interior
          CoulMotifCode = .ColorIndex
          Tramcode = .pattern
      End With

je veux récupérer ces paramètres pour les insérer, de façon auto matique,
dans une autre macro qui aura à formater  certaines cellules en foncti on du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront (ou
qui essaieront )
Noisette


Salut Noisette

Supposons qu'aprés le choix du format je souhaite l'appliquer à la
cellule "B1"

Je récupère le format choisi en l'appliquant sur la cellule "A1" par
exemple ainsi :

Range("A1").Activate
SendKeys "%(t~)", True
SendKeys "~", True

Puis je recopie ce format sur la cellule de mon choix donc "B1"
ainsi :

Range("A1").Copy
Range("B1").PasteSpecial Paste:=xlPasteFormats

Pour la cellule "H20" :

Range("A1").Copy
Range("H20").PasteSpecial Paste:=xlPasteFormats


Pour la plage A20/D30 par exemple celà donnerait :

Range("A1").Activate
SendKeys "%(t~)", True
SendKeys "~", True
Range("A1").Copy
Range("A20", "D30").PasteSpecial Paste:=xlPasteFormats


Celà devrait convenir

Dis moi :::

Avatar
francois.forcet
On 5 fév, 08:01, "Noisette" wrote:
bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer, à
la volée,les caractériques du formatage d'une cellule et ensuite de le s
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu "format ",
puis "Cellule" gràce aux deux lignes suivantes:

  SendKeys "%(t~)", True
  SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante, at tribuer
les paramétres de formatage que je viens de déterminer à une ou plus ieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
  With ActiveCell.Font
          CoulPolCode = .ColorIndex
      End With
      With ActiveCell.Interior
          CoulMotifCode = .ColorIndex
          Tramcode = .pattern
      End With

je veux récupérer ces paramètres pour les insérer, de façon auto matique,
dans une autre macro qui aura à formater  certaines cellules en foncti on du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront (ou
qui essaieront )
Noisette


Rebonjour Noisette

Pour compléter ma proposition
Avec la cellule Active (en G10) je mettrais :

Range("A1").Activate
SendKeys "%(t~)", True
SendKeys "~", True
Range("G10").Activate
Range("A1").Copy
ActiveCell.PasteSpecial Paste:=xlPasteFormats

Qu'en penses tu ????

Avatar
Noisette
Rebonjour,
la solution "Copy" suivi d'un collage spécial serait bien si je devais faire
ces opérations dans la foulée.
le problème réside dans le fait que ces paramètres sont stockés dans une
macro qui va âtre appliquée moult fois, demain, dans six mois
ou plus tard. Jusqu'à ce jour j'opère en enregistrant automatiquement ma
macro de formatage et en insérant manuellement les paramètres trouvés dans
la macro que je crée pour application. Or si les paramètres de formatage
peuvent être appliqués facilement à la cellule, la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins évidente.
Là est mon pb, pour l'instant je continue à la main
j'ai comme l'impression de ne pas être trop clair, je m'en excuse
merci
Noisette



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

bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer,
à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu
"format",
puis "Cellule" gràce aux deux lignes suivantes:

SendKeys "%(t~)", True
SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante,
attribuer
les paramétres de formatage que je viens de déterminer à une ou plusieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
With ActiveCell.Font
CoulPolCode = .ColorIndex
End With
With ActiveCell.Interior
CoulMotifCode = .ColorIndex
Tramcode = .pattern
End With

je veux récupérer ces paramètres pour les insérer, de façon automatique,
dans une autre macro qui aura à formater certaines cellules en fonction
du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront
(ou
qui essaieront )
Noisette







Avatar
francois.forcet
On 5 fév, 10:31, "Noisette" wrote:
Rebonjour,
la solution "Copy" suivi d'un collage spécial serait bien si je devais f aire
ces opérations dans la foulée.
le problème réside dans le fait que ces paramètres sont stockés da ns une
macro qui va âtre appliquée moult fois, demain, dans six mois
ou plus tard. Jusqu'à ce jour j'opère en enregistrant automatiquement ma
macro de formatage et en insérant manuellement les paramètres trouvé s dans
la macro que je crée pour application. Or si les paramètres de formata ge
peuvent être appliqués facilement à la cellule, la lecture de ces m êmes
paramètres dans la cellule formatée pour les stocker semble moins év idente.
Là  est mon pb, pour l'instant je continue à la main
j'ai comme l'impression de ne pas être trop clair, je m'en excuse
merci
Noisette

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




bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistre r,
à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu
"format",
puis "Cellule" gràce aux deux lignes suivantes:

 SendKeys "%(t~)", True
 SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante,
attribuer
les paramétres de formatage que je viens de déterminer à une ou pl usieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et l a
trame de la cellule, j'opère ainsi:
.....
 With ActiveCell.Font
         CoulPolCode = .ColorIndex
     End With
     With ActiveCell.Interior
         CoulMotifCode = .ColorIndex
         Tramcode = .pattern
     End With

je veux récupérer ces paramètres pour les insérer, de façon au tomatique,
dans une autre macro qui aura à formater  certaines cellules en fonc tion
du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposero nt
(ou
qui essaieront )
Noisette- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


Rebonjour Noisette

Que tu stockes ces paramètres dans une Macro ou dans une cellule
quelle différence ????
Si tu rentres ces éléments manuellement dans la macro tu peux tout
aussi bien les intégrer comme paramètres d'une cellule que tu utilises
comme variable pour cette macro par le :

Copy de cette cellule
et
PasteSpecial Paste:=xlPasteFormats
de ou des cellules de destination

Le tout étant de ne pas modifier la cellule de référence

En résumé :

"la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins
évidente"

est tout à fait réalisable par un Copy/PasteSpecial
Paste:=xlPasteFormats


Ne crois tu pas ????


Avatar
Noisette
.................-

<Rebonjour Noisette
<
Que tu stockes ces paramètres dans une Macro ou dans une cellule<
quelle différence ????
Si tu rentres ces éléments manuellement dans la macro tu peux tout
aussi bien les intégrer comme paramètres d'une cellule que tu utilises
comme variable pour cette macro par le :

Copy de cette cellule
et
PasteSpecial Paste:=xlPasteFormats
de ou des cellules de destination

Le tout étant de ne pas modifier la cellule de référence

En résumé :

"la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins
évidente"

c'est tout à fait réalisable par un Copy/PasteSpecial
Paste:=xlPasteFormats


Ne crois tu pas ????



Tu m'ouvres une solution que je n'avais pas envisagée: construire une base
de ..cellules(car il y en a plusieurs, environ trente),que j'irai consulter
quand le besoin s'en fera sentir pour y récupérer les caractéristiques.
Il y a des détails à régler mais c'est faisable
merci pour ton concours
Noisette

Avatar
LSteph
Bonsoir,

Relis ce que je suggérais ce matin.

Or si les paramètres de formatage
peuvent être appliqués facilement à la cellule, la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins évidente.


Tu veux stocker cela dans quoi?
La façon la plus évidente de stocker ces formats c'est de récupèrer les
propriétés d'une cellule formatée avec ces propriétés.

@+

--
lSteph

Rebonjour,
la solution "Copy" suivi d'un collage spécial serait bien si je devais faire
ces opérations dans la foulée.
le problème réside dans le fait que ces paramètres sont stockés dans une
macro qui va âtre appliquée moult fois, demain, dans six mois
ou plus tard. Jusqu'à ce jour j'opère en enregistrant automatiquement ma
macro de formatage et en insérant manuellement les paramètres trouvés dans
la macro que je crée pour application. Or si les paramètres de formatage
peuvent être appliqués facilement à la cellule, la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins évidente.
Là est mon pb, pour l'instant je continue à la main
j'ai comme l'impression de ne pas être trop clair, je m'en excuse
merci
Noisette



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

bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer,
à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu
"format",
puis "Cellule" gràce aux deux lignes suivantes:

SendKeys "%(t~)", True
SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante,
attribuer
les paramétres de formatage que je viens de déterminer à une ou plusieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
With ActiveCell.Font
CoulPolCode = .ColorIndex
End With
With ActiveCell.Interior
CoulMotifCode = .ColorIndex
Tramcode = .pattern
End With

je veux récupérer ces paramètres pour les insérer, de façon automatique,
dans une autre macro qui aura à formater certaines cellules en fonction
du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront
(ou
qui essaieront )
Noisette












Avatar
LSteph
Bonsoir,

(répondre au-dessus est une bonne habitude sur ce forum et évite de tout
redéfiler).

Merci FFO c'est ce que je disais à 8:47

Si tu donne le code complet on y verra.
avec ou sans macro

Copier Coller spécial format
ferait les choses plus simplement.
Si tant est que tu veuilles procéder par macro
la première semble un peu inutile puisqu'il suffirait

de savoir quelle cellule tu as reformatée et suivant les propriétés
que tu veux reprendre pour une autre plage utiliser directement
celles de cette cellule.



@+

--
lSteph

On 5 fév, 10:31, "Noisette" wrote:
Rebonjour,
la solution "Copy" suivi d'un collage spécial serait bien si je devais faire
ces opérations dans la foulée.
le problème réside dans le fait que ces paramètres sont stockés dans une
macro qui va âtre appliquée moult fois, demain, dans six mois
ou plus tard. Jusqu'à ce jour j'opère en enregistrant automatiquement ma
macro de formatage et en insérant manuellement les paramètres trouvés dans
la macro que je crée pour application. Or si les paramètres de formatage
peuvent être appliqués facilement à la cellule, la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins évidente.
Là est mon pb, pour l'instant je continue à la main
j'ai comme l'impression de ne pas être trop clair, je m'en excuse
merci
Noisette

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




bonjour,
j'essaie de mettre au point une macro qui doit me permettre d'enregistrer,
à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu
"format",
puis "Cellule" gràce aux deux lignes suivantes:
SendKeys "%(t~)", True
SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante,
attribuer
les paramétres de formatage que je viens de déterminer à une ou plusieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
With ActiveCell.Font
CoulPolCode = .ColorIndex
End With
With ActiveCell.Interior
CoulMotifCode = .ColorIndex
Tramcode = .pattern
End With
je veux récupérer ces paramètres pour les insérer, de façon automatique,
dans une autre macro qui aura à formater certaines cellules en fonction
du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront
(ou
qui essaieront )
Noisette- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -



Rebonjour Noisette

Que tu stockes ces paramètres dans une Macro ou dans une cellule
quelle différence ????
Si tu rentres ces éléments manuellement dans la macro tu peux tout
aussi bien les intégrer comme paramètres d'une cellule que tu utilises
comme variable pour cette macro par le :

Copy de cette cellule
et
PasteSpecial Paste:=xlPasteFormats
de ou des cellules de destination

Le tout étant de ne pas modifier la cellule de référence

En résumé :

"la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins
évidente"

est tout à fait réalisable par un Copy/PasteSpecial
Paste:=xlPasteFormats


Ne crois tu pas ????




Avatar
Noisette
Absolument d'accord aprés t'avoir relu, mais j'avais une idée, peut être
préconçue, sur la solution à apporter et cela peut
fausser le jugement
Salut

Noisette


"LSteph" a écrit dans le message de news:
%23c$
Bonsoir,

Relis ce que je suggérais ce matin.

Or si les paramètres de formatage
peuvent être appliqués facilement à la cellule, la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins
évidente.


Tu veux stocker cela dans quoi?
La façon la plus évidente de stocker ces formats c'est de récupèrer les
propriétés d'une cellule formatée avec ces propriétés.

@+

--
lSteph

Rebonjour,
la solution "Copy" suivi d'un collage spécial serait bien si je devais
faire
ces opérations dans la foulée.
le problème réside dans le fait que ces paramètres sont stockés dans une
macro qui va âtre appliquée moult fois, demain, dans six mois
ou plus tard. Jusqu'à ce jour j'opère en enregistrant automatiquement ma
macro de formatage et en insérant manuellement les paramètres trouvés
dans
la macro que je crée pour application. Or si les paramètres de formatage
peuvent être appliqués facilement à la cellule, la lecture de ces mêmes
paramètres dans la cellule formatée pour les stocker semble moins
évidente.
Là est mon pb, pour l'instant je continue à la main
j'ai comme l'impression de ne pas être trop clair, je m'en excuse
merci
Noisette



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

bonjour,
j'essaie de mettre au point une macro qui doit me permettre
d'enregistrer,
à
la volée,les caractériques du formatage d'une cellule et ensuite de les
récupérer.
Cette macro ouvre la boite de formatage de la cellule dans le menu
"format",
puis "Cellule" gràce aux deux lignes suivantes:

SendKeys "%(t~)", True
SendKeys "~", True
.....
je choisi mes parametres de formatage mauellement et aprés validation la
main est rendue à la macro qui devrait, si elle était obéissante,
attribuer
les paramétres de formatage que je viens de déterminer à une ou
plusieurs
variables. Mais mes ordres sont mal compris, je dois me planter quelque
part.
Si par exemple j'ai formaté la couleur de la police et la couleur et la
trame de la cellule, j'opère ainsi:
.....
With ActiveCell.Font
CoulPolCode = .ColorIndex
End With
With ActiveCell.Interior
CoulMotifCode = .ColorIndex
Tramcode = .pattern
End With

je veux récupérer ces paramètres pour les insérer, de façon automatique,
dans une autre macro qui aura à formater certaines cellules en fonction
du
type de données qui y autont été inscrites
Si une solution est possible merci d'avance à ceux qui me la proposeront
(ou
qui essaieront )
Noisette













Avatar
Modeste
Bonsour® LSteph avec ferveur ;o))) vous nous disiez :

La façon la plus évidente de stocker ces formats c'est de récupèrer
les propriétés d'une cellule formatée avec ces propriétés.


;o)))
Cette fonctionnalité s'appelle Style !!!!

Effectuez l'une des actions suivantes :
1 - *Pour créer un style*
Sélectionnez une cellule dotée des différentes mises en forme que vous souhaitez
inclure dans le nouveau style. (Vous pouvez spécifier ces mises en forme lorsque
vous nommez le style.)
Dans le menu Format, cliquez sur Style.
Dans la zone Nom du style, tapez le nom du nouveau style.
Pour définir et appliquer le style aux cellules sélectionnées, cliquez sur OK.
Pour définir le style sans l'appliquer, cliquez sur Ajouter, puis sur Fermer.

2 - *Pour spécifier des mises en forme pour un style*
Dans le menu Format, cliquez sur Style.
Dans la zone Nom du style, tapez le nom du nouveau style.
Pour changer les mises en forme d'un style existant, cliquez sur le style à
modifier.
Cliquez sur Modifier.
Sous les onglets de la boîte de dialogue, sélectionnez les mises en forme
souhaitées, puis cliquez sur OK.
Désactivez la case à cocher correspondant à chaque type de mise en forme que
vous ne souhaitez pas inclure dans le style.
Pour définir et appliquer le style aux cellules sélectionnées, cliquez sur OK.
Pour définir le style sans l'appliquer, cliquez sur Ajouter, puis sur Fermer.

--
--
@+
;o)))

1 2