Créer des liens sur les formes et verrouiller des formes

kopax

XLDnaute Nouveau
Bonjour,

J'aurai deux questions pour réalisé grace à une macro les choses suivantes :

1/ J'essai de désactiver le clique sur des objets que j'ai posé sur une carte de la France.
J'ai mis des frontieres faites sur Illustrator sur cette carte, et j'aimerai rendre impossible sa sélection.
J'ai également mis des chiffres sur les départements, j'aimerai rendre leur selection impossible pour éviter toute éditions !
2/ Grace a une liste de tout les départements français en bas du tableau, je souhaiterai faire en sorte que lorsque l'on clique sur la cellule du nom du départements ou/et la cellule avec le code postal, que ça sélectionne automatiquement la forme sur la carte de manière à la colorer plus rapidement.

En espérant que quelqu'un puisse m'aider,


merci d'avance

PJ : un screen plus parlant :

http://www.imagup.com/data/1128770185.html
 

Pièces jointes

  • Exemple_CarteGP1.xlsx
    108 KB · Affichages: 66
  • Exemple_CarteGP1.xlsx
    108 KB · Affichages: 69
  • Exemple_CarteGP1.xlsx
    108 KB · Affichages: 70
Dernière édition:
G

Guest

Guest
Re : Créer des liens sur les formes et verrouiller des formes

Bonjour et bienvenue sur le forum,

En faisant une recherche sur le forum avec les mots 'France' et 'Colorier' tu trouveras plein d'exemple.

Sinon, à partir d'une image nous ne pouvons rien faire...

Pour voir comment rédiger ta question: Lien supprimé

A+
 

kopax

XLDnaute Nouveau
Re : Créer des liens sur les formes et verrouiller des formes

Bonjour,

merci pour le lien de la chartre, j'ai pris la peine de la lire.
J'ai également fais les huits pages de recherches.
J'ai trouvé un liens intéressant dans l'un des topics :
Les images et shapes
Malheureusement je ne trouve pas comment faire la sélection de l'objet.

De plus je suis amateur en VBA je ne fais que démarrer , penser vous que Déplacez la souris puis faire un clique est la solution optimal ?
 
G

Guest

Guest
Re : Créer des liens sur les formes et verrouiller des formes

Re,

Si tu as lu la charte alors il ne t'auras pas échapper que sans fichier exemple, nous aurons du mal à t'aider, chaque situation étant unique.

A+
 

kopax

XLDnaute Nouveau
Re : Créer des liens sur les formes et verrouiller des formes

Re,

Si tu as lu la charte alors il ne t'auras pas échapper que sans fichier exemple, nous aurons du mal à t'aider, chaque situation étant unique.

A+

Excuse moi, ça me paraissait pas une obligation
En tout cas c'est sur que ça reste plus parlant

Je mets le fichiers en PJ, ésperons que quelqu'un pourra m'aider maintenant :p
 

Pièces jointes

  • Exemple_CarteGP1.xlsx
    108 KB · Affichages: 94
  • Exemple_CarteGP1.xlsx
    108 KB · Affichages: 73
  • Exemple_CarteGP1.xlsx
    108 KB · Affichages: 60
G

Guest

Guest
Re : Créer des liens sur les formes et verrouiller des formes

Bonjour,

Je pensais t'avoir répondu et joint un classeur exemple hier:confused: Comme j'ai été interrompu, je n'ai pas du valider mon post.

Dans le classeur joint tu trouveras une façon de coloriser un shape suivant la sélection d'un département. J'ai pris la couleur de L6 par défaut, mais si tu as d'autre couleurs à mettre, vas voir ce fil, que j'ai retrouvé, parmi des dizaines en faisant une recherche sur le forum avec les mots "carte france".

Dans le classeur le cas de la région parisienne n'est pas traitée, il faudrait des shapes individuels pour chacun des département.
A+
 

kopax

XLDnaute Nouveau
Re : Créer des liens sur les formes et verrouiller des formes

Merci beaucoup pour ton exemple.
Il faut savoir qu'il ne fonctionne pas avec tout les départements. (La dernière colonne ne fonctionne pas)

Sinon je pense mal m'être exprimé.
Ton exemple est intéressant mais il ne peux pas convenir pour les raisons suivantes :
- Si je clique sur un nom et je ferme le documents en sauvegardant il va me coloriser la zone que je voulais juste mettre en évidence pour travailler.
- Je ne peux pas modifié la couleur directement, il sélectionne la cellule ou le nom du département se trouve.


J'essai de ré-expliqué avec d'autre mot ce dont j'ai besoin avec ce fichier :
- Lorsque je clique sur mon tableau avec tout les départements -> sélectionner sur ma carte l'objet correspondant à ce département.
Ainsi je le vois rapidement et le modifie rapidement.
- Bloquer la sélection de tout les groupes d'objets ou objet en premier plan gênant pour modifié les couleurs des départements :
- Bloquer la sélection de la forme des frontières de région car en premier plan, il empêche de sélectionner ce qu'il y a en dessous. Si je le verrouille, je ne peux toujours pas cliquer en dessous.
- Bloquer les numéros de départements, la carte étant trop petite, ca deviens difficile de modifié la couleur d'une région rapidement.

En faite sur la carte j'aurai juste besoin de retrouvé une région et modifié sa couleur assez rapidement ce qui n'est pas le cas avec le model actuel.

Autrement ce qui serai peut être possible, c'est de cliquer sur mon tableau avec tout les noms de départements, au premier clique changer la couleur en vert, second clique en jaune, et troisième en automatique.
Ainsi pas besoin de touché a la carte de France ni d'être gêné par les objets en questions.
 
G

Guest

Guest
Re : Créer des liens sur les formes et verrouiller des formes

Re,

tout ceci ne me dis pas ce que toi tu as fais pour aller vers ce que tu souhaites. Ce forum n'est pas un marché à la macro et sans participation du demandeur, je ne peux rien.

La dernière colonne des département ne fonctionnait pas parcequ'elle est fusionnée avec la colonne elle. Les fusions de cellules compliquent toujours la programation par macro.

Avec la macro ci-dessous (à mettre en lieu et place de l'autre), tu selectionnes une cellule, le département correspondant passe en jaune, a la selection suivante il passera en vert et la suivante en blanc. Pour la région parisienne, il faudrait distinguer les noms des 'shapes' à l'intérieur de la carte (les petits) et ceux à l'extérieur (les grands) par des noms légèrement différents ex FR-75 pour le petit et FR-75A pour le grand

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If Target.Count < 3 And Not Intersect(Target, Range("ListeDepartements")) Is Nothing Then
    Dim shp As Shape, Dep As String, couleur As Long
 
    'Vérification du contenu de la cellule
    Dep = Trim(Target(1).Text)
    'Si le premier caractère, n'est pas numeric, prendre la cellule à gauche de target
    If Not IsNumeric(Left(Dep, 1)) Then Dep = Trim(Target(1, 0)(1).Text)
 
    'Au cas où une cellule aurait été éfacée, sortir
    If Dep = "" Then Exit Sub
 
    Dep = "FR-" & Dep  
 
 
        'Mettre la couleur au nouveau 'shape'  (couleur de L6)
        With Me.Shapes(Dep).Fill
            Select Case .ForeColor.RGB
                Case Range("L6").Interior.Color: couleur = Range("L5").Interior.Color
                Case Range("L5").Interior.Color: couleur = RGB(255, 255, 255)
                Case RGB(255, 255, 255): couleur = Range("L6").Interior.Color
                Case Else: couleur = Range("L6").Interior.Color
            End Select
            .Solid
            .Transparency = 0#
            .ForeColor.RGB = couleur
        End With
 
 End If
End Sub


A+
 

kopax

XLDnaute Nouveau
Re : Créer des liens sur les formes et verrouiller des formes

Re,

tout ceci ne me dis pas ce que toi tu as fais pour aller vers ce que tu souhaites. Ce forum n'est pas un marché à la macro et sans participation du demandeur, je ne peux rien.

Excuse moi je commence juste en macro, je suis vraiment un débutant et tant bien que mal je développe sur d'autre langage, excel ne me parle pas beaucoup en ce moment bien que j'épluche le code comme je peux, mais promis je vais redoublé d'effort

La dernière colonne des département ne fonctionnait pas parce qu'elle est fusionnée avec la colonne elle. Les fusions de cellules compliquent toujours la programation par macro.

C'est noté à l'avenir

Avec la macro ci-dessous (à mettre en lieu et place de l'autre), tu selectionnes une cellule, le département correspondant passe en jaune, a la selection suivante il passera en vert et la suivante en blanc. Pour la région parisienne, il faudrait distinguer les noms des 'shapes' à l'intérieur de la carte (les petits) et ceux à l'extérieur (les grands) par des noms légèrement différents ex FR-75 pour le petit et FR-75A pour le grand

J'ai essayé avec ta Macro;
Le résultat que j'obtiens ne correspond pas tout à fais à ce que tu m'expliques.
Lorsque je clique sur un nom de département, la zone se colorie en jaune, je clique sur un autre, le jaune disparaît pour un blanc.
Ce n'est pas possible de le mettre en vert ou en blanc volontairement pour automatiquement compléter la carte comme si c'était des boutons.
Pour les noms des shapes, j'ai tenté de les modifier comme tu me conseil, mais apparemment il y a un truc a faire dans le code pour que cela fonctionne.

Merci d'avoir indenté ton code c'est bien plus compréhensible en tout cas.
 
G

Guest

Guest
Re : Créer des liens sur les formes et verrouiller des formes

Re,

Dernière tentative.

Mise en place de 3 boutton d'option de formulaire avec les couleurs idoines

choisir une des couleur puis selectionner une à une les cellules des départements à coloriser de la couleur choisie.

Mise en place d'un bouton pour remettre tous les départements à blanc.

A+
 

kopax

XLDnaute Nouveau
Re : Créer des liens sur les formes et verrouiller des formes

Merci beaucoup pour ton exemple, il fonctionne impeccable.
J'ai un peu eu du mal à exporter et mettre en place ton code sur mon fichier je le cache pas, mais bon je suis débutant :)

Je le met en place dans mon fichier je te tiens au courant demain matin pour te dire comment ça c'est passé...

Sinon pour le module supprimercouleur, il n'y aurai pas moyen de faire un truc plus general propre à chaque feuille du classeur ? Car j'ai le même bouton pour une dizaine de page, il y a peut être mieux que alourdir la macro ?

Edit : J'ai modifié le tableau ListeDepartement et remis les cellules, par contre a cette ligne ci :

Code:
With Sheets("Feuil1").Range("$A$33:$M$48")

il existe pas quelque chose pour dire La feuille Active ?

Edit2 :

Code:
With ActiveSheet.Range("$A$33:$M$48")
Je pense que c'est la valeur correcte, en revanche, il me met un bug maintenant pour :

.Parent.Shapes("FR-" & Format(Array(75, 77, 78, 91, 92, 93, 94, 95)(i), "00A")).Fill.ForeColor.RGB = 16777215

par contre cette ligne la je comprend pas le parent.shapes, et ne sais pas par quoi le remplacer !
 
Dernière édition:
G

Guest

Guest
Re : Créer des liens sur les formes et verrouiller des formes

Re,

Si: ActiveSheet

With ActiveSheet
'.....
'.....
End With

P.S. dans ton prochain fil de discussion, si la question que tu poses doit concerner plusieurs feuilles du classeur, dis le. Ceux qui te répondront pourront prendre cet élément en compte dans leur réponse.

Par exemple si tu m'avais dis que tu avais plusieurs feuilles avec des cartes je t'aurais proposé quelque chose d'un peu différent.
 

kopax

XLDnaute Nouveau
Re : Créer des liens sur les formes et verrouiller des formes

Re,

Si: ActiveSheet

With ActiveSheet
'.....
'.....
End With

P.S. dans ton prochain fil de discussion, si la question que tu poses doit concerner plusieurs feuilles du classeur, dis le. Ceux qui te répondront pourront prendre cet élément en compte dans leur réponse.

Par exemple si tu m'avais dis que tu avais plusieurs feuilles avec des cartes je t'aurais proposé quelque chose d'un peu différent.


Merci pour ta réponse et ton aide, j'ai réussi à mettre à jour comme je le souhaite le fichier fonctionne parfaitement ;)

Un grand merci
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 105
Messages
2 085 350
Membres
102 870
dernier inscrit
Armisa