Carte interactive

will1903

XLDnaute Nouveau
Bonjour,

je souhaite créer un outil excel pour mon boulot. Cet outil consiste à retrouver une liste de contactes dans une base de données à partir d'une carte de France. En effet quand je clique sur le département 62 (par exemple), je souhaite que excel me sorte la liste des contacts qui ont le département 62 dans les données.

1ère chose: Suis-je clair?
2ème: Si oui comment faut-il faire?
 

Pièces jointes

  • contacts.xlsx
    36.9 KB · Affichages: 404
  • contacts.xlsx
    36.9 KB · Affichages: 438
  • contacts.xlsx
    36.9 KB · Affichages: 465

job75

XLDnaute Barbatruc
Re : Carte interactive

Bonjour Fl0rent, le forum,

En complément de mon post #30.

Au cas où la gestion d'erreur ne fonctionnerait pas correctement sur Mac 2011, j'ai remplacé :

Code:
If Err = 0 Then Set cel = cel.Offset(1)
par :

Code:
txt = Application.Caller
If txt <> "" Then Set cel = cel.Offset(1)
dans la macro Filtre de ce fichier (4 bis). Voyez ce qu'il en est.

A+
 

Pièces jointes

  • contacts multiselection(4 bis).xls
    298 KB · Affichages: 51
Dernière édition:

Fl0rent

XLDnaute Nouveau
Re : Carte interactive

Bonjour à tous,

Merci pour vos réponses.

Alors même avec la modification de job75 l'erreur demeure.
Voici la fenêtre qui s'affiche lorsque je clique sur un département.
Erreur d'exécution "438"
Propriété ou méthode non gérée par cet objet.

Si je test le debogage, voilà la ligne qui semble poser problème.
If [N6] = "" Or ActiveSheet.CommandButton1.Caption Like "Arr*" Then Exit Sub

Ce qui est étrange c'est que le fichier contacts(2).xls du fil fonctionne.
Lorsque je clique sur un département je me retrouve bien dans l'onglet base.

Mais j'avoue que les modifications suivantes sur le fil m'intéressent et j'aurais souhaité pouvoir utiliser les fichiers suivants.

Merci en tout cas pour votre aide.

Bon week-end.

Cordialement.

F.
 

job75

XLDnaute Barbatruc
Re : Carte interactive

Re,

J'ai modifié la ligne incriminée par :

Code:
If [N6] = "" Or ActiveSheet.OLEObjects("CommandButton1").Object.Caption Like "Arr*" Then Exit Sub
Fichier(4 ter), dites-moi.

A+
 

Pièces jointes

  • contacts multiselection(4 ter).xls
    312.5 KB · Affichages: 38

job75

XLDnaute Barbatruc
Re : Carte interactive

Re,

Si la modification de mon post précédent fonctionne, il faut aussi modifier le code dans ThisWorkbook :

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Bloque Cancel
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Bloque Cancel
End Sub

Sub Bloque(Cancel As Boolean)
With Sheets("Carte")
  If .OLEObjects("CommandButton1").Object.Caption Like "Arr*" Then
    Cancel = True
    .Activate
    MsgBox "Cliquer sur 'Arrêter la mémorisation' !"
  End If
End With
End Sub
Utilisez alors ce fichier (5).

A+
 

Pièces jointes

  • contacts multiselection(5).xls
    308 KB · Affichages: 46

Fl0rent

XLDnaute Nouveau
Re : Carte interactive

Vous êtes particulièrement réactif même un samedi cela mérite donc que je suive de près les débats. ;-)
Alors cette fois voilà le message d'erreur généré par un clic sur un département.

Erreur d'exécution 1004
Impossible de lire la propriété OLEObjects de la classe Worksheet

Par contre cliquer sur le débogage ne laisse apparaître aucune fenêtre. Mais cela rend inopérationnel le clic sur les départements.

Voilà, désolé de vous donner autant de mal à résoudre mon problème sous Mac alors que je suis certain que sous Windows je n'aurais aucun problème.

Cordialement.

F.
 

Fl0rent

XLDnaute Nouveau
Re : Carte interactive

job75, une étape importante vient d'être franchie!
Aucun message d'erreur cette fois.

En revanche, voilà ce qu'un clic sur un département concerné par l'exemple de la base me donne comme résultat sur l'écran.
J'ai bien une fenêtre qui s'ouvre et j'imagine que je devrais pouvoir cliquer sur une des lignes à l'intérieur de la fenêtre en particulier quand je clique sur le département 59 qui possède 2 sociétés référencées dans la base.
Mais la fenêtre qui s'ouvre reste désespérément vide...

A vous lire.

PS: je sais que le Mac ne recueille pas tous les suffrages mais il est tellement attachant de par une certaine forme de convivialité.

F.


Capture d'écran 2014-02-22 16.01.59.jpg
 

job75

XLDnaute Barbatruc
Re : Carte interactive

Re,

Je crains qu'une nouvelle fois il va falloir abandonner, Mac 2011 est indécrottable.

Avant d'arrêter :

- cliquez sur le département 14 (aucun contact), dans la feuille Filtre il ne doit pas y avoir de ligne filtrée.

- cliquez sur le département 59, dans la feuille Filtre il doit y avoir 2 lignes filtrée.

Alors ?

A+
 

Fl0rent

XLDnaute Nouveau
Re : Carte interactive

Bonjour en ce beau dimanche dans le sud,

Eh bien les deux clic (départements 14 et 59) fonctionnent tous les deux au niveau du filtre.
Il reste seulement la question de la fenêtre qui s'ouvre pour a priori indiquer les lignes concernées qui restent vide.
Pourtant en cliquant sur le 14 j'ai une fenêtre qui s'ouvre m'indiquant "Aucun contact dans le 14..." et m'invitant à cliquer sur le bouton OK.
Ce qui m'amène à penser que le seul problème qui demeure est la visibilité des lignes dans cette même fenêtre lorsque des lignes existent.
Mais au niveau de l'onglet filtre aucun problème.

En tout cas encore merci de votre aide.

Bon dimanche.

Cordialement.

F.
 

job75

XLDnaute Barbatruc
Re : Carte interactive

Bonjour Fl0rent, le forum,

Vérifiez encore qu'après avoir cliqué sur 59 le nom "Contacts" est bien défini par =Filtre!$B$2:$C$3

Si c'est bien le cas, c'est que la propriété RowSource de la ListBox ne fonctionne pas.

Alors essayez encore en ajoutant DoEvents :

Code:
plage2.Name = "Contacts"
DoEvents
A+
 

job75

XLDnaute Barbatruc
Re : Carte interactive

Re,

Essayez aussi ce fichier (7) où au lieu du nom "Contacts" j'utilise :

Code:
.ListBox1.RowSource = "Filtre!" & plage2.Address
pour définir la RowSource de la ListBox.

A+
 

Pièces jointes

  • contacts multiselection(7).xls
    313 KB · Affichages: 127

Fl0rent

XLDnaute Nouveau
Re : Carte interactive

bonjour job75,

Hélas revoilà l'erreur d'exécution 1004...

Merci de ton aide.
Je vais espérer qu'un utilisateur Mac puisse lui aussi faire quelques tests sur ces fichiers sinon j'abandonnerai l'idée de pouvoir profiter de votre travail à tous.

Merci.

Cordialement.

Florent
 

job75

XLDnaute Barbatruc
Re : Carte interactive

Bonjour Fl0rent, le forum,

Mac 2011 changerait-il les noms des contrôles ?

Si c'était le cas il suffirait de remplacer partout les anciens noms par les nouveaux.

Mais pour moi c'est terminé, je pars en voyage pour une semaine.

A+
 

Discussions similaires

Réponses
29
Affichages
1 K