Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Conversion image/Excel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

flocco

XLDnaute Junior
Bonjour,

Etant en ce moment toujours dans une logique géographique, j'ai essayé de trouver une carte Excel des régions allemandes.
Sur www.deixsys.com j'ai trouvé les départements mais c'est trop de détails, j'ai besoin des régions uniquement.
Alors je n'ai trouvé que des cartes comme celle en pièce jointe, pas top...
Quelle solution possible ? une "conversion" de l'image en Excel ?
Je n'ai pas de Datamap ou autres

Merci d'avance à tous en ces temps de fêtes !
 

Pièces jointes

  • Allemagne.jpg
    33 KB · Affichages: 105
Re : Conversion image/Excel

Bonsoir

Un essai en pièce jointe.

Pour ce qui est de détourer les régions, il suffit de sélectionner la carte, et de la dégrouper. Chaque forme-région est déja nommée (Cf. son nom en haut à gauche).

J'ai mis des couleurs en AW4:AW24, avec format de cellule-->remplissage. Pour vraiment avoir un dégradé de qualité, il faudrait trouver une formule (dépendant de la valeur inscrite dans la cellule) ou positionner des couleurs mieux choisies dans cette colonne AW.
Il y a une petite macro que j'ai trouvé sur le forum qui définit la fonction personnalisé coloreimage utilisée en colonne AV.

@ plus
 

Pièces jointes

Dernière édition:
Re : Conversion image/Excel

Bonjour Cisco,

Merci pour cet essai.
Si je comprends bien il faut que les valeurs de ma colonne soit = à celle dans AW ?
Cela permettrait de répondre au coloriage des formes, yes.
Quid de faire apparaître les valeurs des colonnes dans les formes ? avec distinction de couleur de police ?

Je me permets de mettre en pj un exemple sur la France (Sousou m'avait alors super aidé), j'aimerais appliquer et optimiser le code sur la carte de l'Allemagne et le comprendre 🙂

Encore merci !
 

Pièces jointes

Re : Conversion image/Excel

Bonjour
Bonjour Cisco,

Merci pour cet essai.
Si je comprends bien il faut que les valeurs de ma colonne soit = à celle dans AW ?
Cela permettrait de répondre au coloriage des formes, yes.

Encore merci !

J'avais fait une petite erreur dans la formule en colonne AV. Cela ne fonctionnait que si les valeurs en colonne AS se trouvaient dans la colonne AW. Pour corriger ce défaut, il suffit de remplacer le EQUIV(...;...;0) par EQUIV(...;...;1) dans cette colonne AV. Par exemple, 110 renverra la couleur correspondant à 100...

Comme dit dans mon précédent post, cela n'est pas parfait car alors toutes les valeurs de 100 à 199 renverront la couleur correspondant à 100, toutes celles de 200 à 299 renverront celle correspondant à 200 et ainsi de suite. Il faudrait trouver une formule ou une macro donnant directement le dégradé en fonction de la valeur en colonne AS, ce que je ne sais faire.

@ plus
 
Re : Conversion image/Excel

Rebonjour

PS: je ne connais rien au VBA (juste une formation de 4h à mon entreprise il y a 1 mois...)

C'est tout comme pour moi, plusieurs heures de formation en basic et en fortran dans les années 1980, et 0 en VBA... Mais il y a le forum 🙂.

Ceci dit, je pense que cela doit être faisable directement avec ton fichier sur la Fance. Cf. en pièce jointe le début du travail. Pour obtenir celle-ci, j'ai pris ton fichier sur la France, j'y ai collé la carte de l'Allemagne que tu as mise dans un de tes précédents post, et en colonne A les noms des régions allemandes... et hop, c'est fait... Les nombres, pourcentages n'apparaissent pas au bon endroit. Pour corriger cela, il suffit de choisir chaque région, puis de centrer horizontalement et verticalement ces valeurs comme tu le ferais dans Word (Accueil -->Alignement...).

Je ne dis pas que c'est parfait. Entre autre, j'ai vu que le nom Bretagne était marqué dans la macro, dans le module 1, ce qui ne semble pas des plus logiques... Bien sûr, on peut avoir dans la macro, un truc qui s'appelle Bretagne, mais qui ne désigne pas réellement la région Bretagne, mais tout autre chose, les formes en général, une plage de la feuille...

En espérant qu'un VBiste de passage controlera tout cela, et nous expliquera un peu comment cela fonctionne (création du dégradé, positionnement des nombres dans les formes-régions...).

Bonnes fêtes à tous.

@ plus
 

Pièces jointes

Dernière édition:
Re : Conversion image/Excel

Bonne année à tous !
En espérant que celle-ci nous apporte toutes les solutions aux problèmes Excel rencontrés 😉
Vivement la bonne âme charitable qui résoudra mes demandes antérieures de ce post....
A bientôt
 
Re : Conversion image/Excel

Il me suffit de changer les min et max et les couleurs de remplissage de cellules, j'adore le résultat !
Pourrais-je abuser et demander les commentaires des modules ? j'essaie vraiment de comprendre...
 
Re : Conversion image/Excel

Re

Il me suffit de changer les min et max et les couleurs de remplissage de cellules, j'adore le résultat !
Pourrais-je abuser et demander les commentaires des modules ? j'essaie vraiment de comprendre...

Oui, y'a pas de soucis. j'ai fait le premier. Pour les autres procédures, c'est le même principe 🙂.

Code:
Sub MAJ_Régions()
Range("Zone").Select 'on sélectionne la plage nommée "Zone"
Application.ScreenUpdating = False 'on désactive les modifications visibles à l'écran
For Each cell In Selection 'pour chaque cellule dans la selection
cell.Select 'sélectionne la cellule
Couleur = ActiveCell.Offset(0, 1).Interior.Color 'la couleur à prendre en compte est la couleur de la cellule en colonne + 1
ActiveSheet.Shapes.Range(Array(ActiveCell.Text)).Select 'On sélectionne la forme du nom de la cellule active
Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = Chr(10) & cell & "" & Chr(10) & ActiveCell.Offset(0, 1).Text & Chr(13) & ActiveCell.Offset(0, 2).Text 'on remplit la forme avec le texte
NCar = Len(Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text) 'on teste la longueur du texte de la forme
Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, NCar).ParagraphFormat. _
        Alignment = msoAlignCenter 'on aligne le texte de la forme des caractères 1 à Ncar
        ActiveSheet.Shapes.Range(Array(ActiveCell.Text)).Select 'On sélectionne la forme du nom de la cellule active
With Selection.ShapeRange(1).Fill
        .Visible = msoTrue
        .ForeColor.RGB = Couleur 'on rempli la forme avec la couleur précédemment définie
        .Transparency = 0
        .Solid
    End With
Next
Application.ScreenUpdating = True 'on réactive les modifications visibles à l'écran
[A1].Select 'on sélectionne la cellule A1
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
205
Réponses
0
Affichages
157
Réponses
14
Affichages
472
Réponses
5
Affichages
776
Réponses
5
Affichages
429
Réponses
8
Affichages
1 K
Réponses
4
Affichages
741
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…