Autres Insérer plusieurs images en fonction de différents codes avec VBA

aurelieevb

XLDnaute Nouveau
Bonjour,

Je souhaite réaliser un support contenant des informations produits (codes, nom, ...) et surtout son image correspondante qui se trouve dans un fichier photos sur disque dur.

je n'y arrive pas ...

quelqu'un pourrait il m'aider

je joins u exemple de ce que je souhaiterais obtenir.

merci beaucoup
 

Pièces jointes

  • 24113.jpg
    24113.jpg
    111.9 KB · Affichages: 30
  • 24842.jpg
    24842.jpg
    7.7 KB · Affichages: 23
  • 24850.jpg
    24850.jpg
    105.3 KB · Affichages: 23
  • 24952.jpg
    24952.jpg
    54.3 KB · Affichages: 22
  • 37735.jpg
    37735.jpg
    218.8 KB · Affichages: 23
  • TEST FLYERS.xlsm
    29.7 KB · Affichages: 4
Dernière édition:
Solution
Bonjour,

Voilà un fichier.

Des constantes définissent pas mal de paramètres à adapter si nécessaire.
Et c'est nécessaire au moins pour le répertoire des images.
VB:
'---------------------------------------------------
Public Const RépertoireImages = "H:\Téléchargements"
'---------------------------------------------------
'
Public Const ExtensionImages = ".jpg"
'
Public Const NomFeuilleSélection = "SELECTION"
Public Const NomFeuilleModèle = "Modèle"
Public Const NomFeuilleFlyer = "Flyer"
'
Public Const FeuilleSélection_PremièreLigne = 4
Public Const FeuilleSélection_NoColonneCodeProduit = 2
Public Const FeuilleSélection_NoColonneNomProduit = 3

Public Const FeuilleModèle_CelluleImage1 = "B9"
Public Const FeuilleModèle_CelluleImage2 =...

Dudu2

XLDnaute Barbatruc
Bonjour,

Voilà un fichier.

Des constantes définissent pas mal de paramètres à adapter si nécessaire.
Et c'est nécessaire au moins pour le répertoire des images.
VB:
'---------------------------------------------------
Public Const RépertoireImages = "H:\Téléchargements"
'---------------------------------------------------
'
Public Const ExtensionImages = ".jpg"
'
Public Const NomFeuilleSélection = "SELECTION"
Public Const NomFeuilleModèle = "Modèle"
Public Const NomFeuilleFlyer = "Flyer"
'
Public Const FeuilleSélection_PremièreLigne = 4
Public Const FeuilleSélection_NoColonneCodeProduit = 2
Public Const FeuilleSélection_NoColonneNomProduit = 3

Public Const FeuilleModèle_CelluleImage1 = "B9"
Public Const FeuilleModèle_CelluleImage2 = "F9"
Public Const FeuilleModèle_CelluleImage3 = "C21"
Public Const FeuilleModèle_CelluleImage4 = "F28"
Public Const FeuilleModèle_CelluleImage5 = "B32"
Public Const FeuilleModèle_CellulesImages = FeuilleModèle_CelluleImage1 & "," & _
                                            FeuilleModèle_CelluleImage2 & "," & _
                                            FeuilleModèle_CelluleImage3 & "," & _
                                            FeuilleModèle_CelluleImage4 & "," & _
                                            FeuilleModèle_CelluleImage5

A noter que l'option d'insertion des images choisie consiste à remplir la cellule au maximum soit en hauteur soit en largeur SANS altérer le ratio de l'image.

S'il faut combler totalement la cellule en hauteur et en largeur avec l'image tout en acceptant une déformation de l'image, c'est possible. Un simple paramètre à ajouter dans l'appel de la fonction d'importation de l'image.
 

Pièces jointes

  • TEST FLYERS.xlsm
    45.6 KB · Affichages: 7
Dernière édition:

Dudu2

XLDnaute Barbatruc
Bonjour,
J'aurais dû y penser avant mais voici une version plus simple à gérer en plaçant dans le tableau de la feuille SELECTION les cellules cibles des images et leur répertoire. Plus de constantes à adapter dans le code.
 

Pièces jointes

  • TEST FLYERS.xlsm
    48.4 KB · Affichages: 11

patricktoulon

XLDnaute Barbatruc
Bonjour @Dudu2 @aurelieevb
si vous permettez je fait plus simple
tout d'abords je supprime la colonne D qui n'est pas vraiment nécessaire dans le sens ou c'est toujours les même cadre dans la feuille Flyer
ensuite (juste pour un visuel ) quand je sélectionne une ligne celle ci et les 4 suivante deviennent vertes
demo7.gif

ensuite je simplifie avec ma fonction de placement basé sur le même principe que @Dudu2

et j'ajoute aussi ma fonction imageminime pour réduire le poids des images qui dans cet exemple vont de moins de 10 kilo a plus de 100 kilo
et ça c'est juste au cas ou il y aurait projet de sauvegarder la feuille flyer dans un fichier
la réduction de poids peut se faire par la qualité ou la taille de l'image
j'ai choisi la taille qui est modifiée a au maximum du width de u cadre de reception
rigolez pas on obtiens une sérieuse réduction
demo7.gif



j'ai dis tout a l'heure que j'avais supprimé la colonne "D"
en effet incrémente le placement avec un array des address
ce qui me permet de sélectionner n'importe quelle ligne et donc celle ci et les 4 suivantes iront dans le flyer a leur positions

voila on sélectionne une ligne en "B" et on appuie sur le bouton
 

Pièces jointes

  • TEST FLYERS V pat .xlsm
    37.4 KB · Affichages: 8

Discussions similaires

Statistiques des forums

Discussions
315 168
Messages
2 116 930
Membres
112 921
dernier inscrit
Nagazaki