OVH Cloud OVH Cloud

For,each and color...

6 réponses
Avatar
René Delcourt
Bonjour la communauté,
J'ai commencé à utiliser for each...next mais avec des shapes, ça coince:

Dim Q As Shape
For Each Q In Feuil2.Shapes
Q.Font.ColorIndex = 1
Next

Où est l'erreur?
Merci
--
René Delcourt

6 réponses

Avatar
michdenis
Bonjour René,


Dim Q As Shape
For Each Q In Feuil1.Shapes
Q.OLEFormat.Object.Font.ColorIndex = 1
Next


En autant que parmi tes objets de ta feuille, tu n'ais pas des contrôles issues de la barre d'outils Contrôle.


Salutations!





"René Delcourt" a écrit dans le message de news:
Bonjour la communauté,
J'ai commencé à utiliser for each...next mais avec des shapes, ça coince:

Dim Q As Shape
For Each Q In Feuil2.Shapes
Q.Font.ColorIndex = 1
Next

Où est l'erreur?
Merci
--
René Delcourt
Avatar
garnote
Bonjour René,

Peut-être que :
Sub Essai()
Dim Q As Shape
For Each Q In Feuil2.Shapes
Q.TextFrame.Characters.Font.ColorIndex = 1
Next
End Sub

Serge

"René Delcourt" a écrit dans le message de news:

Bonjour la communauté,
J'ai commencé à utiliser for each...next mais avec des shapes, ça coince:

Dim Q As Shape
For Each Q In Feuil2.Shapes
Q.Font.ColorIndex = 1
Next

Où est l'erreur?
Merci
--
René Delcourt


Avatar
AV
Perso je reste fidèle à l'objet "DrawingObjects"

For Each Q In Sheets("Feuil1").DrawingObjects
Q.Font.ColorIndex = 1
Next

PS : même remarque que Denis pour la restriction
AV
Avatar
René Delcourt
Merci
Mon espoir s'est, à l'essai, évanoui : erreur 438 (propr. no gérée par cet
objet)
--
René Delcourt



Bonjour René,


Dim Q As Shape
For Each Q In Feuil1.Shapes
Q.OLEFormat.Object.Font.ColorIndex = 1
Next


En autant que parmi tes objets de ta feuille, tu n'ais pas des contrôles issues de la barre d'outils Contrôle.


Salutations!





"René Delcourt" a écrit dans le message de news:
Bonjour la communauté,
J'ai commencé à utiliser for each...next mais avec des shapes, ça coince:

Dim Q As Shape
For Each Q In Feuil2.Shapes
Q.Font.ColorIndex = 1
Next

Où est l'erreur?
Merci
--
René Delcourt





Avatar
René Delcourt
C'est nickel!
Merci
--
René Delcourt



Perso je reste fidèle à l'objet "DrawingObjects"

For Each Q In Sheets("Feuil1").DrawingObjects
Q.Font.ColorIndex = 1
Next

PS : même remarque que Denis pour la restriction
AV





Avatar
michdenis
Bonjour René,

Ce ne sont pas tous les objets qui peuvent recevoir du texte.

ou qu'ils ont un d'objet "Font" d'où erreur 438. Ceci se produit indépendamment de la macro que tu as retenue. Voici quelques
contrôles pour lesquelles les macros que tu as reçues ne s'appliquent. Étiquette , Frame , Listbox , Combobox ...
de la barre d'outils formulaire. De plus certains objets comme la "Ligne" de la barre de dessin n'ont pas cette propriété de défini.

Évidemment, la restriction pour les oleobjects continue de s'appliquer.

Il faut ou bien utiliser "on error resume next"

ou élaborer une procédure qui tienne compte des divers objets contenus dans la feuille.


Salutations!





"René Delcourt" a écrit dans le message de news:
Merci
Mon espoir s'est, à l'essai, évanoui : erreur 438 (propr. no gérée par cet
objet)
--
René Delcourt



Bonjour René,


Dim Q As Shape
For Each Q In Feuil1.Shapes
Q.OLEFormat.Object.Font.ColorIndex = 1
Next


En autant que parmi tes objets de ta feuille, tu n'ais pas des contrôles issues de la barre d'outils Contrôle.


Salutations!





"René Delcourt" a écrit dans le message de news:
Bonjour la communauté,
J'ai commencé à utiliser for each...next mais avec des shapes, ça coince:

Dim Q As Shape
For Each Q In Feuil2.Shapes
Q.Font.ColorIndex = 1
Next

Où est l'erreur?
Merci
--
René Delcourt