Formes automatiques visible ou non

Le
Pierre-Yves Ste-Marie
Est-il possible selon la valeur d'une cellule, de rendre visible ou non une
des formes automatiques disponibles dans Excel, comme une flèche.

Merci à vous tous.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
LSteph
Le #4749181
Bonjour,
A adapter:

''''''''''''''''dans le code de la feuille
Private Sub Worksheet_Calculate()
Call mesobjetsV
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
Call mesobjetsV
End Sub

Private Sub mesobjetsV()
Shapes(1).Visible = [a1] > 8
Shapes(2).Visible = [a1] > 12
End Sub
'''''''''''''''''''''''''''''''''''''''''''

'lSteph

Est-il possible selon la valeur d'une cellule, de rendre visible ou non une
des formes automatiques disponibles dans Excel, comme une flèche.

Merci à vous tous.




Pierre-Yves Ste-Marie
Le #4747761
Merci beaucoup cher LSteph,

ça répond très bien à ce que je voulais...

Mais je me permets une sous-question: est-il possible d'identifier les
formes et leur numéro.
Ma feuille contient une certaine quantité de formes et par essaies et
erreurs j'ai réussi à identifier
quelle forme était le numéro 1 et les autres... Mais il y a peut-être une
façon plus simple.

Et merci encore


"LSteph" news:%
Bonjour,
A adapter:

''''''''''''''''dans le code de la feuille
Private Sub Worksheet_Calculate()
Call mesobjetsV
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
Call mesobjetsV
End Sub

Private Sub mesobjetsV()
Shapes(1).Visible = [a1] > 8
Shapes(2).Visible = [a1] > 12
End Sub
'''''''''''''''''''''''''''''''''''''''''''

'lSteph

Est-il possible selon la valeur d'une cellule, de rendre visible ou non
une des formes automatiques disponibles dans Excel, comme une flèche.

Merci à vous tous.




Modeste
Le #4747621
Bonsour® Pierre-Yves Ste-Marie avec ferveur ;o))) vous nous disiez :

Mais je me permets une sous-question: est-il possible d'identifier les
formes et leur numéro.



Sub List_All_Shapes()''-----Dave Hawley www.ozgrid.com
Dim sShapes As Shape, lLoop As Long
Dim WsNew As Worksheet
Dim wsLoop As Worksheet
Set WsNew = Sheets.Add
'---------Add headings for our lists. Expand as needed
WsNew.Range("A1:G1") = _
Array("Nom", "Type", "Hauteur", "Largeur", "Gauche", "Haut", "Feuille")
'---------Loop through all Worksheet
For Each wsLoop In Worksheets
'-------Loop through all shapes on Worksheet
For Each sShapes In wsLoop.Shapes
'-----Increment Variable lLoop for row numbers
lLoop = lLoop + 1
With sShapes
'-----Add shape properties
WsNew.Cells(lLoop + 1, 1) = .name
WsNew.Cells(lLoop + 1, 2) = .OLEFormat.Object.name
WsNew.Cells(lLoop + 1, 3) = .Height
WsNew.Cells(lLoop + 1, 4) = .Width
WsNew.Cells(lLoop + 1, 5) = .Left
WsNew.Cells(lLoop + 1, 6) = .Top
'-------Follow the same pattern for more
WsNew.Cells(lLoop + 1, 7) = wsLoop.name
End With
Next sShapes
Next wsLoop
'-------AutoFit Columns.
WsNew.Columns.AutoFit
End Sub


@+
;o)))

LSteph
Le #4747601
Bonjour,

oui un objet dessiné peut-être désigné par son numéro ou par son nom
exact si on le connait
exemple:

ActiveSheet.Shapes("Oval 2").Fill.ForeColor.SchemeColor = 44

(Sinon assignes toi même des noms à tes objets si tu en supprime ou
ajoute par macro)

Cordialement.

lSteph

Merci beaucoup cher LSteph,

ça répond très bien à ce que je voulais...

Mais je me permets une sous-question: est-il possible d'identifier les
formes et leur numéro.
Ma feuille contient une certaine quantité de formes et par essaies et
erreurs j'ai réussi à identifier
quelle forme était le numéro 1 et les autres... Mais il y a peut-être une
façon plus simple.

Et merci encore


"LSteph" news:%
Bonjour,
A adapter:

''''''''''''''''dans le code de la feuille
Private Sub Worksheet_Calculate()
Call mesobjetsV
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
Call mesobjetsV
End Sub

Private Sub mesobjetsV()
Shapes(1).Visible = [a1] > 8
Shapes(2).Visible = [a1] > 12
End Sub
'''''''''''''''''''''''''''''''''''''''''''

'lSteph

Est-il possible selon la valeur d'une cellule, de rendre visible ou non
une des formes automatiques disponibles dans Excel, comme une flèche.

Merci à vous tous.








Pierre-Yves Ste-Marie
Le #4747291
Merci.
Mais si j'en crée ou ajoute par la barre de sélection et par la souris,
alors c'est Excel qui génère automatiquement son numéro,
peut-on alors modifier son numéro par un nom par la suite?

Bonne journée


"LSteph" news:
Bonjour,

oui un objet dessiné peut-être désigné par son numéro ou par son nom
exact si on le connait
exemple:

ActiveSheet.Shapes("Oval 2").Fill.ForeColor.SchemeColor = 44

(Sinon assignes toi même des noms à tes objets si tu en supprime ou ajoute
par macro)

Cordialement.

lSteph

Merci beaucoup cher LSteph,

ça répond très bien à ce que je voulais...

Mais je me permets une sous-question: est-il possible d'identifier les
formes et leur numéro.
Ma feuille contient une certaine quantité de formes et par essaies et
erreurs j'ai réussi à identifier
quelle forme était le numéro 1 et les autres... Mais il y a peut-être une
façon plus simple.

Et merci encore


"LSteph" news:%
Bonjour,
A adapter:

''''''''''''''''dans le code de la feuille
Private Sub Worksheet_Calculate()
Call mesobjetsV
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
Call mesobjetsV
End Sub

Private Sub mesobjetsV()
Shapes(1).Visible = [a1] > 8
Shapes(2).Visible = [a1] > 12
End Sub
'''''''''''''''''''''''''''''''''''''''''''

'lSteph

Est-il possible selon la valeur d'une cellule, de rendre visible ou non
une des formes automatiques disponibles dans Excel, comme une flèche.

Merci à vous tous.









lSteph
Le #4699301
Re,

Mets ceci dans un module standard ferme vbe
sélectionne ta feuille puis Outils macro
testSh() te renvoie un petit rapport de tes objets avec leur position
haut gauche
renommetout() te les rebaptise monObj et un numéro
testSh à nouveau pour voir le résultat
en même temps ces trois codes te donnes idée de comment faire
(la fonction créée ici boucleshapes est paramètrable).

Option Explicit
Function BoucleShapes(Optional ByVal _
wsname As String) As String
Dim myShp As Shape, myCr As String
If Len(wsname) = 0 Then wsname = ActiveSheet.Name
myCr = "Nom" & " " & "Type" & " " & "Haut" & " " _
& " " & "Gauche" & vbCrLf
For Each myShp In Worksheets(wsname).Shapes
With myShp
myCr = myCr & .Name & " " & _
TypeName(myShp.OLEFormat.Object) _
& " " & " " & .Top & " " & .Left & " " & vbCrLf
End With
Next myShp
BoucleShapes = myCr
End Function

Sub testSh()
MsgBox BoucleShapes
End Sub


Sub renommetout()
Dim myShp As Shape, i As Integer
For Each myShp In ActiveSheet.Shapes
With myShp
i = i + 1
.Name = "MonObj" & i
End With
Next myShp

End Sub




On 13 sep, 13:34, "Pierre-Yves Ste-Marie" wrote:
Merci.
Mais si j'en crée ou ajoute par la barre de sélection et par la souri s,
alors c'est Excel qui génère automatiquement son numéro,
peut-on alors modifier son numéro par un nom par la suite?

Bonne journée

"LSteph"
news:

Bonjour,

oui un objet dessiné peut-être désigné par son numéro ou par son nom
exact si on le connait
exemple:

ActiveSheet.Shapes("Oval 2").Fill.ForeColor.SchemeColor = 44

(Sinon assignes toi même des noms à tes objets si tu en supprime ou ajoute
par macro)

Cordialement.

lSteph

Merci beaucoup cher LSteph,

ça répond très bien à ce que je voulais...

Mais je me permets une sous-question: est-il possible d'identifier les
formes et leur numéro.
Ma feuille contient une certaine quantité de formes et par essaies et
erreurs j'ai réussi à identifier
quelle forme était le numéro 1 et les autres... Mais il y a peut- être une
façon plus simple.

Et merci encore

"LSteph" news:%
Bonjour,
A adapter:

''''''''''''''''dans le code de la feuille
Private Sub Worksheet_Calculate()
Call mesobjetsV
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Call mesobjetsV
End Sub

Private Sub mesobjetsV()
Shapes(1).Visible = [a1] > 8
Shapes(2).Visible = [a1] > 12
End Sub
'''''''''''''''''''''''''''''''''''''''''''

'lSteph

Est-il possible selon la valeur d'une cellule, de rendre visible ou non
une des formes automatiques disponibles dans Excel, comme une flèc he.

Merci à vous tous.










LSteph
Le #4698771
...ouppsss quelle faute de rebidouille de texte!
.. en même temps la structure de ces trois codes te donne idée de
comment faire

Re,

Mets ceci dans un module standard ferme vbe
sélectionne ta feuille puis Outils macro
testSh() te renvoie un petit rapport de tes objets avec leur position
haut gauche
renommetout() te les rebaptise monObj et un numéro
testSh à nouveau pour voir le résultat
en même temps ces trois codes te donnes idée de comment faire
(la fonction créée ici boucleshapes est paramètrable).

Option Explicit
Function BoucleShapes(Optional ByVal _
wsname As String) As String
Dim myShp As Shape, myCr As String
If Len(wsname) = 0 Then wsname = ActiveSheet.Name
myCr = "Nom" & " " & "Type" & " " & "Haut" & " " _
& " " & "Gauche" & vbCrLf
For Each myShp In Worksheets(wsname).Shapes
With myShp
myCr = myCr & .Name & " " & _
TypeName(myShp.OLEFormat.Object) _
& " " & " " & .Top & " " & .Left & " " & vbCrLf
End With
Next myShp
BoucleShapes = myCr
End Function

Sub testSh()
MsgBox BoucleShapes
End Sub


Sub renommetout()
Dim myShp As Shape, i As Integer
For Each myShp In ActiveSheet.Shapes
With myShp
i = i + 1
.Name = "MonObj" & i
End With
Next myShp

End Sub




On 13 sep, 13:34, "Pierre-Yves Ste-Marie" wrote:
Merci.
Mais si j'en crée ou ajoute par la barre de sélection et par la souris,
alors c'est Excel qui génère automatiquement son numéro,
peut-on alors modifier son numéro par un nom par la suite?

Bonne journée

"LSteph"
news:

Bonjour,
oui un objet dessiné peut-être désigné par son numéro ou par son nom
exact si on le connait
exemple:
ActiveSheet.Shapes("Oval 2").Fill.ForeColor.SchemeColor = 44
(Sinon assignes toi même des noms à tes objets si tu en supprime ou ajoute
par macro)
Cordialement.
lSteph
Merci beaucoup cher LSteph,
ça répond très bien à ce que je voulais...
Mais je me permets une sous-question: est-il possible d'identifier les
formes et leur numéro.
Ma feuille contient une certaine quantité de formes et par essaies et
erreurs j'ai réussi à identifier
quelle forme était le numéro 1 et les autres... Mais il y a peut-être une
façon plus simple.
Et merci encore
"LSteph" news:%
Bonjour,
A adapter:
''''''''''''''''dans le code de la feuille
Private Sub Worksheet_Calculate()
Call mesobjetsV
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Call mesobjetsV
End Sub
Private Sub mesobjetsV()
Shapes(1).Visible = [a1] > 8
Shapes(2).Visible = [a1] > 12
End Sub
'''''''''''''''''''''''''''''''''''''''''''
'lSteph
Est-il possible selon la valeur d'une cellule, de rendre visible ou non
une des formes automatiques disponibles dans Excel, comme une flèche.
Merci à vous tous.














Publicité
Poster une réponse
Anonyme