Problème worksheet

desatan

XLDnaute Occasionnel
Bonjour à tous,

Je viens vous demander de l'aide.
Dans le fichier ci joint, j'ai 2 feuilles, une de données et une de financier.
Sur la feuille de restitution, j'ai des fléches qui s'affichent en fonction de la colone I de la feuille données.

Mon problème vient de i94 et i95.
Quand les résultats de ces cellules est supérieur à 0, je dois alors avoir une flèche rouge vers le haut sur la feuille financier
Quand les résultats de ces cellules est inférieur à 0, je dois alors avoir une flèche verte vers le bat sur la feuille financier

Pour les autres cela fonctionne mais ces 2 là fonctionnent à l'inverse des autres.

Merci par avance
 

Pièces jointes

  • fleche.xls
    220 KB · Affichages: 22
  • fleche.xls
    220 KB · Affichages: 30
  • fleche.xls
    220 KB · Affichages: 31

desatan

XLDnaute Occasionnel
Re : Problème worksheet

Merci Gilbert mais non le fichier ne fonctionne pas.
i94 et i95 fonctionnent à l'inverse des autres!
Quand ces cellules sont supérieurs à 0, on doit avoir un flèche rouge qui monte et quand ces cellules sont inférieurs à 0, on doit avoir une flèche verte qui descend.

Et si possible, je souhaite conserver les formats des flèches de mon fichier d'origine.

MErci par avance
 

desatan

XLDnaute Occasionnel
Re : Problème worksheet

Quand j'importe le code de ton module et de la feuille financier dans mon fichier source.
Je clique sur la feuille données puis financier, j'ai un message d'erreur qui apparait.
Je fais déblocage et ca de surligné en jaune :
ActiveSheet.Shapes("plus" & i).Delete

MErci par avance pour ton aide
 

gilbert_RGI

XLDnaute Barbatruc
Re : Problème worksheet

Bonjour,

remplace la procédure supprime_shape par celle-ci
VB:
Sub supprime_shape()
    On Error Resume Next
    For i = 1 To 5
        ActiveSheet.Shapes("plus" & i).Delete
        ActiveSheet.Shapes("moins" & i).Delete

    Next
End Sub
 

desatan

XLDnaute Occasionnel
Re : Problème worksheet

Bonjour,

Merci, cela a corrigé le bug ;-)

Comment puis je changer de couleur les flèches ?
Comment puis je positionner différement les flèches ? Par exemple, en mettre une plus basse que l'autre ?

Merci par avance
 

gilbert_RGI

XLDnaute Barbatruc
Re : Problème worksheet

voilà le code expliqué
VB:
    Dim objShp As Shape                                                          ' Déclarations
    'msoShapeDownArrow
    x = 100                                                                     'largeur de départ
    y = 50                                                                      'hauteur de départ
    For i = 1 To 5                                                              'boucle pour les 5 shapes montantes
        Set objShp = ActiveSheet.Shapes.AddShape(msoShapeUpArrow, x, y, 20, 40) 'création de la flèche montante
        If i = 3 Or i = 4 Then                                                  'si c'est la flèche 3 ou 4
            objShp.Fill.ForeColor.RGB = RGB(255, 0, 0)                          'mettre en rouge
        Else                                                                    'sinon
            objShp.Fill.ForeColor.RGB = RGB(0, 255, 255)                        'mettre en vert
        End If                                                                  'fin du si
        objShp.Name = "plus" & i                                                'nommer la flèche avec incrémentation
        objShp.IncrementRotation 45                                             'inclinaison de la flèche
        x = x + 150                                                             'espace entre chaque flèche
    Next
 

gilbert_RGI

XLDnaute Barbatruc
Re : Problème worksheet

pour la hauteur de la flèche il faut changer la valeur du top

expression .AddShape(Type, Left, Top, Width, Height)

expression Variable représentant un objet Formes.
[h=3]Paramètres[/h]
Nom
Obligatoire/Facultatif
Type de données
Description
Type
Obligatoire
Ce lien n'existe plus
Spécifie le type de forme automatique à créer.
Left
Obligatoire
Single
Position (exprimée en points) du coin supérieur gauche du cadre englobant de la forme automatique par rapport au coin supérieur gauche du document.
Top
Obligatoire
Single
Position (exprimée en points) du coin supérieur gauche du cadre englobant de la forme automatique par rapport au coin supérieur gauche du document.
Width
Obligatoire
Single
Largeur du cadre englobant de la forme automatique, exprimée en points.
Height
Obligatoire
Single
Hauteur du cadre englobant de la forme automatique, exprimée en points.


[h=3][/h]
 

Discussions similaires

Réponses
15
Affichages
626
Réponses
4
Affichages
287

Statistiques des forums

Discussions
312 839
Messages
2 092 687
Membres
105 509
dernier inscrit
hamidvba