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

Microsoft 365 Image sous la grille - zoom proportionnel

JyCu

XLDnaute Nouveau
Bonjour à tous,
je crée un outil au boulot, qui a bien avancé, mais je bute sur un détail. Je crée un fichier avec le plan géographique de mon site industriel. J'aimerais intégrer l'image de mon usine SOUS la grille pour que les cellules restent accessibles (jusque là, tout va bien) mais là où je bute, c'est que j'aimerais que l'image ne se duplique pas à l'infini, il ne m'en faut qu'un exemplaire. et aussi, j'ai besoin de zoomer pour agrandir plus ou moins les cellules, le soucis est que les cellules changent bien de taille avec le zoome mais pas l'image. Or j'aimerais que l'image se zoome en même temps que les cellules, dans les mêmes proportions.

Sinon, si ça n'est pas possible, j'ai une alternative qui m'irait aussi. Avec l'image PAR DESSUS la grille, si je clique à un endroit de l'image, que Excel soit capable de lire l'adresse de la cellule qui est sous mon clic "a travers" l'image.

En vous remerciant tous, après tout, excel c'est le V.B.A BA d'un bon travail !
 
Solution
Bonjour à tous, je vous remercie pour vos réponses. A toutes fins utiles, je pense que j'ai trouvé la solution. En insérant un ActiveX et lui intégrant une image et avec ce code :
Private Sub MyImage_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) Dim cell As Range Dim img As OLEObject Set img = Me.OLEObjects("MyImage") ' Convertir les coordonnées de l'image en coordonnées de la feuille Dim sheetX As Single Dim sheetY As Single sheetX = img.Left + X sheetY = img.Top + Y ' Déterminer la ligne et la colonne correspondant aux coordonnées Dim row As Long Dim col As Long row = Int(sheetY / Me.Rows(1).Height) + 1 col = Int(sheetX /...

JyCu

XLDnaute Nouveau
Bonjour,
Ici comme ailleurs les nouveaux qui publient la même question sur plusieurs forums sont en général peu appréciés.
A+
Bonjour, désolé, je ne savais pas que cela pouvait poser un problème. Je me disais que ce n'était pas les mêmes utilisateurs. Le but était surtout d'augmenter mes chances d'obtenir une réponse avec des utilisateurs d'horizons différents
 

JyCu

XLDnaute Nouveau
Bonjour, je vous remercie. C'est la premiere chose que j'ai faite. Le soucis c'est que ça duplique l'image et aussi, malheureusement, elle ne se zoome pas en même temps que les cellules. Elle reste à la même taille quelle que soit le zoom
 

Phil69970

XLDnaute Barbatruc
Bonjour à tous


@JyCu

Juste en passant ma version sur la vision du cross posting et pour rejoindre @bof :

Vu du demandeur c'est plus facile de poster tout azimut en attendant une "solution toute zone" MAIS vu de ceux qui cherchent des réponses c'est clairement se moquer d'eux.

Dans 9 fois sur 10 le demandeur ne viendra pas dire arrêter de chercher j'ai trouvé sur tel site cette réponse qui me convient

Je préfère clairement la solution "mono forum" pour sa question car il ne fait pas perdre du "temps de cerveau disponible" aux personnes qui prennent le temps de chercher et répondre à la question du demandeur.

De plus voici ce qu'en pense l'administrateur de ce site David Aubert


Et pour finir voici ce qu'en pense la charte du forum le § 2.10

2.10 - Ne posez pas votre question sur plusieurs forums sur Internet. Si vous avez déjà posté votre question ailleurs et que nous n'avez pas de réponses, supprimez votre fil sur l'autre forum avant de poser votre question sur Excel Downloads. Cela fonctionnne aussi dans l'autre sens si vous souhaitez poser votre question ailleurs. Cette pratique s'appelle "le cross posting" et elle est très mal perçue par les membres répondant à vos questions.

Et en venant sur le site vous avez accepté la charte ....

Bonne lecture
 

Modeste geedee

XLDnaute Barbatruc
Bonsour
Combien de cellules sont censées être recouvertes par l'image de ton usine ?

Définir un quadrillage représentatif de ton usine ,
Faire correspondre par calculs des coordonnées (evenement mousedown), les plages nommées souhaitées...
 

JyCu

XLDnaute Nouveau
Bonjour à tous, je vous remercie pour vos réponses. A toutes fins utiles, je pense que j'ai trouvé la solution. En insérant un ActiveX et lui intégrant une image et avec ce code :
Private Sub MyImage_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) Dim cell As Range Dim img As OLEObject Set img = Me.OLEObjects("MyImage") ' Convertir les coordonnées de l'image en coordonnées de la feuille Dim sheetX As Single Dim sheetY As Single sheetX = img.Left + X sheetY = img.Top + Y ' Déterminer la ligne et la colonne correspondant aux coordonnées Dim row As Long Dim col As Long row = Int(sheetY / Me.Rows(1).Height) + 1 col = Int(sheetX / Me.Columns(1).Width) + 1 ' Vérifier que les coordonnées sont dans les limites de la feuille If row > 0 And row <= Me.Rows.Count And col > 0 And col <= Me.Columns.Count Then ' Déterminer la cellule sous les coordonnées Set cell = Me.Cells(row, col) ' Écrire l'adresse de la cellule en A1 Range("A1").Value = cell.Address Else ' Si les coordonnées sont hors limites, afficher un message d'erreur MsgBox "Le clic est hors des limites de la feuille de calcul.", vbExclamation End IfEnd Sub"

Merci a tous d'avoir pris le temps de me répondre désolé si mon double post a pu etre gênant
 

JyCu

XLDnaute Nouveau
Bonjour et toutes mes excuses, Rien de compliqué, néanmoins, je ne peux être aussi réactif que je le souhaiterais.
Globalement, avec un ActiveX, la zone à couvrir n'a plus trop d'importance. Là où j'en suis c'est que j'aimerais qu'à chaque clic sur le ActiveX de la feuille1 , une ellipse se crée et son nom unique s'inscrivent dans la feuille Historique. Chaque Ellipse à une date d'apparition qui lui est propre (définie manuellement par l'utilisateur) et les ellipses doivent apparaitre si et seulement si la date en G1 de la feuille 1 est dans l'intervalle des date de la feuille historique
 

Pièces jointes

  • historique1.PNG
    7 KB · Affichages: 7
  • Feuille1.PNG
    175.8 KB · Affichages: 8

Discussions similaires

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