XL 2019 plage de cellule extrait image format 16/9

wrap food

XLDnaute Occasionnel
Bonjour a tous, voila mon problème.
J'ai un code qui extrait une plage de donnée dans des feuilles bien définies et qui créait des images en format JPEG.
Mon souci est qu'elles sont en format 4/3 et que j'ai besoin de les afficher sur des écrans en 16/9 .
Si je les mets sur ces écrans j'ai deux bandes noires de chaque cotés.
J'ai essayé de modifier les largeurs de colonnes mais rien à faire j'ai toujours une image en 4/3.
je mets mon code ci-dessous , si quelqu'un peux me donner une piste
par avance merci a vous

ActiveWorkbook.Save
Dim Plage As Range
Dim x As Byte
Dim Chemin As String
Dim wks As Worksheet

Chemin = ThisWorkbook.Path & "\" ' a adapter

For Each wks In ThisWorkbook.Worksheets
If Left(wks.Name, 4) = "plat" Then
x = x + 1
Set Plage = wks.Range("A1:I12")
NOM = Chemin & wks.Cells(1, 2).Value & ".jpeg"
Application.ScreenUpdating = False
DoEvents
Set Cht = Workbooks.Add(xlChart).Charts(1)
Cht.ChartArea.Clear
Plage.CopyPicture xlScreen, xlPicture
DoEvents
Do While Cht.Shapes.Count = 0
DoEvents
Cht.Paste
DoEvents
Loop
DoEvents
With Cht.Shapes(1)
.Left = 0
.Top = 0
.Width = Cht.ChartArea.Width
.Height = Cht.ChartArea.Height
End With
Cht.Export NOM, "PNG", False
Cht.Parent.Close False
End If
Next
ThisWorkbook.Save
DoEvents
ThisWorkbook.Close False
End Sub
 

Roland_M

XLDnaute Barbatruc
Bonsoir,

on ne peut rien faire avec ton code tel quel !

maintenant si tu veux redimensionner une image 4/3 en 16/9
une fois la hauteur attente, si tu veux l'élargir ça va déformer !? ou alors j'ai pas bien compris !?
 

wrap food

XLDnaute Occasionnel
Bonjour Roland,

Désolé pour mon retour tardif ....

En faite avec mon code j'arrive a créer une image le la plage "A1:I12".
Mais quand je la mets sur un écran ( 16/9) via une clef USB elle n'est pas en plein écran.....
en faite je souhaiterais pouvoir dimensionner l'image via la macro en 1920(l) x 1080(h)

existe t- il une autre approche que la mienne ?

par avance merci de ton aide
 

patricktoulon

XLDnaute Impliqué
bosoir
est tu conscient ou que si tes cellules sont d'origine on est plus proche du 21/10 ( letterbox) que du 16/9

et oui c'est possible mais il y aura déformation

Capture.JPG
 

Roland_M

XLDnaute Barbatruc
Mais quand je la mets sur un écran ( 16/9) via une clef USB elle n'est pas en plein écran.....
bonsoir tout le monde, salut Patrick,

mais enfin, comment te faire comprendre . . .
si tu veux remplir plein écran sur ton ton 16/9, tu vas devoir étirer sur la hauteur et forcément déformer l'image !
si tu ne veux pas déformer, c'est possible, en étirant sur la hauteur donc mais en même temps sur la largeur !
et là tu as une partie de l'image qui va disparaître sur les côtés de l'écran !
c'est une question de logique !

sinon l'autre approche, c'est à toi de faire en sorte de redimensionner les largeurs de colonnes et les hauteurs de lignes
afin d'avoir un rapport en dimension avec ton 16/9 ! il faut sortir ta calculette !
exemple:

i2.jpgi1.jpg
 
Dernière édition:

Haut Bas