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

Carte régions de France : insérer des données

flocco

XLDnaute Junior
Bonjour,

Je me permets de vous solliciter afin de répondre à ce besoin précis :
Ayant récupérer une carte de France sous Excel via le site Ce lien n'existe plus (et n'ayant pas Data Map), j'aimerais pouvoir insérer les données dans la colonne B (voir ajouter 2 autres colonnes de données à afficher) sur la carte.

Voir fichier en pj

Merci par avance
Florent
 

Pièces jointes

  • FRANCE_REGIONS_DEIXSYS.xlsx
    95.8 KB · Affichages: 291

sousou

XLDnaute Barbatruc
Re : Carte régions de France : insérer des données

Bonsoir
Une solution sur l’événement change de la feuille
autant de colonnes que tu veux
J'ai défini un nom "région" qui représente l'ensemble des régions colonne a
Quant il y a plusieurs colonnes de données la séparation est faites par un Rc chr(13)
A suivre
 

Pièces jointes

  • sousou FRANCE_REGIONS_DEIXSYS.xlsm
    104.8 KB · Affichages: 233
  • sousou FRANCE_REGIONS_DEIXSYS.xlsm
    104.8 KB · Affichages: 297
  • sousou FRANCE_REGIONS_DEIXSYS.xlsm
    104.8 KB · Affichages: 289

DoubleZero

XLDnaute Barbatruc
Re : Carte régions de France : insérer des données

Bonjour, flocco, le Forum,

A titre d'exemple, sélectionner la zone de texte "Ile-de-France", saisir dans la barre de formule :

Code:
=$B$13

A bientôt

Nota : si les valeurs de plusieurs colonnes doivent être insérées, la procédure diffère légèrement (ajout d'une colonne intermédiaire, pouvant être masquée, où les différentes valeurs sont concaténées).

P. S. : Bonjour, sousou.
 

flocco

XLDnaute Junior
Re : Carte régions de France : insérer des données

Merci pour vos réponse, ça fonctionne bien !
Et si je souhaite que la colonne B soit affichée en % comment faire ?
Question bonus : est-il possible de colorer la région en fonction de pourcentage (un dégradé de couleur en fonction de la croissance) ?
 

flocco

XLDnaute Junior
Re : Carte régions de France : insérer des données

Bonjour,

Qui saurait m'apporter de l'aide à ma dernière question relative au fichier envoyé par Sousou ?
==> afficher la colonne A en % mais la B en nb entier (ou inversement peu importe)
De plus je n'arrive pas à modifier la taille de la police (même en changeant 8 par 12 dans le code cela ne fonctionne pas)

Merci
 

sousou

XLDnaute Barbatruc
Re : Carte régions de France : insérer des données

Bonjour
Regarde le document joint
Cette solution gère la couleur et les textes.
si colonne 2 est un pourcentage , calcul de la couleur.
 

Pièces jointes

  • sousou FRANCE_REGIONS_DEIXSYS.xlsm
    108.7 KB · Affichages: 306
  • sousou FRANCE_REGIONS_DEIXSYS.xlsm
    108.7 KB · Affichages: 392
  • sousou FRANCE_REGIONS_DEIXSYS.xlsm
    108.7 KB · Affichages: 406

flocco

XLDnaute Junior
Re : Carte régions de France : insérer des données

Bonjour

Et bonnes fêtes !!
Encore merci à Sousou pour son aide

Comment faire pour modifier les couleurs des données, ex : données des colonnes B et C en bleu et colonne D en noir (ou rouge peu importe)

Merci d'avance
Flocco
 

flocco

XLDnaute Junior
Re : Carte régions de France : insérer des données

Et serait-il possible, en bonus, de 'commenter' les commandes/codes ?
Afin que je puisse comprendre et si possible modifier, voire soyons fous refaire ?
Merci !
 

sousou

XLDnaute Barbatruc
Re : Carte régions de France : insérer des données

Bonjour et bonne année à tous
J'étais absent ce qui fait que ma réponse tarde....
Pour la couleur: Chaque zone ne peut avoir q'une seule couleur(ici colonne2) je ne vois pas trop ce que tu veux
code avec commentaire
Private Sub Worksheet_Change(ByVal Target As Range)
' le nom 'région' définit les données de la colonne a il va ici de a1 à a23 " voir gestionaire de nom
For Each i In ThisWorkbook.Names("région").RefersToRange
'Choisir la zone de la carte
carte = i
ActiveSheet.Shapes(carte).TextFrame2.TextRange.Characters.Text = ""
'initialisation de l'offset colonne
k1 = 1
'tant qu'il y a des données dans les colonnes de cette ligne
While i.Offset(0, k1) <> ""
couleur = 0
'récupère la donnée sous forme de texte
Set données = i.Offset(0, k1)
n = données.Text
'La phrase ecrite dans la zone de carte sera :
phrase = ActiveSheet.Shapes(carte).TextFrame2.TextRange.Characters.Text
phrase = phrase & Chr(13) & n
ActiveSheet.Shapes(carte).TextFrame2.TextRange.Characters.Text = phrase
'définition de la police
ActiveSheet.Shapes(carte).TextFrame2.TextRange.Font.Size = 11
' si c'est la colonne 2: donc pourcentage donc calcul de la couleur
If k1 = 2 Then
couleur = 255 - Int(données * 200)
ActiveSheet.Shapes(carte).Fill.ForeColor.RGB = RGB(couleur, couleur, couleur)
End If
'colonne suivante
k1 = k1 + 1
Wend
'fin de ligne
k1 = 1
Next
End Sub

A suivre0....
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…