PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → code insertion d'une image directement dans une cellule Excel
code insertion d'une image directement dans une cellule Excel
Débuté par Frederic BOITTIN, 02 mai 2024 15:57 - 3 réponses
Membre enregistré
5 messages
Posté le 02 mai 2024 - 15:57
Bonjour,

j'ai le code pour mettre une image dans Excel, mais cette image est un objet à part entière, il n'est pas intégrer dans la cellule

Avez-vous in code qui permet de mettre l'mage directement dans la cellule Excel

voici mon code actuel

debutimage est un entier = 8
coordoimage est une chaîne = "G"+NumériqueVersChaîne(debutimage)
Nbenrclient est un entier
repimage est une chaîne
rarticle est une chaîne
rimage est une chaîne
Nbenrclient = HNbEnr(F_OFFREPRIX)
HOuvre(f_PARAMETRES)
HLitPremier(f_PARAMETRES,IDf_PARAMETRES)
repimage=f_PARAMETRES.rep_image
HFerme(f_PARAMETRES)
//j est un caractère="G"
//j=Caract(Asc(j)+1)
xl est un objet OLE "Excel.Application"
xl>>Visible=OLEVrai
xl>>workbooks>>open("D:\Dossier RIBIMEX\test.xlsx")
xl>>sheets("OFFRE_RIBIMEX")>>select(OLEVrai)
MaCellule est un objet Automation dynamique
POUR k=1_A_ Nbenrclient
xl>>Range(coordoimage)>>Select()
xl>>Selection
xl>>Selection>>Rows>>RowHeight = 89
xl>>Selection>>Columns>>ColumnWidth = 25.00
xl>>Selection>>VerticalAlignment = -4108
xl>>Selection>>Columns>>AutoFit()
MaCellule= xl>>activeSheet>>Range(coordoimage)
// recherche de image dans F_ARTICLE
rarticle = xl>>Range("A"+NumériqueVersChaîne(debutimage))>>Value
HLitRecherche(F_ARTICLE,ref_article,rarticle)
SI HTrouve() ALORS
rimage = F_ARTICLE.media1_article
FIN
monimage est une chaîne=repimage+"\"+rimage
MaChaîne1 est une chaîne
MaChaîne1 = "%1"
MonRésultat est une chaîne = ChaîneConstruit(MaChaîne1, monimage)
xl>>ActiveSheet>>Shapes>>AddPicture(MonRésultat, False, True, ...
MaCellule>>Left+8,MaCellule>>Top+4,MaCellule>>Width,MaCellule>>Height)
debutimage=debutimage+1
coordoimage= "G"+NumériqueVersChaîne(debutimage)
FIN

Merci

Frédéric
Membre enregistré
3 927 messages
Popularité : +227 (347 votes)
Posté le 02 mai 2024 - 18:12
Bonjour,
Pour placer une image dans une cellule, la doc XL précise :
Sous l’onglet Insertion , sélectionnez Images.
Sélectionnez Placer dans la cellule.
Sélectionnez l’une des sources suivantes dans le menu déroulant Insérer une image à partir de :

Il n'y a plus qu'à créer la macro et à convertir en WL

--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
5 messages
Posté le 03 mai 2024 - 10:00
Bonjour,

merci de l'info
et comment je converti la macro en WL
Merci

Frédéric
Membre enregistré
3 927 messages
Popularité : +227 (347 votes)
Posté le 03 mai 2024 - 11:07
Il suffit de remplacer les "." par des ">>"

--
Il y a peut être plus simple, mais, ça tourne