Bonjour,

je viens ici pour trouver de l'aide. Je n'arrive pas à lire correctement le contenu d'une image.

Je copie beaucoup de cellules depuis un autre fichier excel source.
Les cellules copiées sont passées en image pour afficher celle-ci dans un userform dans mon fichier excel cible.

voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Private Sub UserForm_Click()
Dim Wbk1 As Object
Dim Wbk As Workbook
Dim pic_rng As Range
Dim NomImage As String
Dim sh_temp As Worksheet
Dim ch_temp As Chart
Dim PicTemp As Picture
 
Application.DisplayAlerts = False
Application.ScreenUpdating = False
 
Set Wbk = Workbooks.Open("test.xls") 'On ouvre le fichier contenant les donnees a recuperer pour image
Wbk.Unprotect
Worksheets("t").Activate
Worksheets("t").Select
Worksheets("t").Unprotect
 
Set pic_rng = Sheets(1).Range("A5:K9") 'faire le xlendup plus tard
 
 
 
Set sh_temp = Worksheets.Add
Charts.Add
ActiveChart.Location where:=xlLocationAsObject, Name:=sh_temp.Name
Set ch_temp = ActiveChart
pic_rng.CopyPicture Appearance:=xlScreen, Format:=xlPicture
ch_temp.Paste
Set PicTemp = Selection
With ch_temp.Parent
.Width = PicTemp.Width
.Height = PicTemp.Height
End With
ch_temp.Export Filename:=ThisWorkbook.path & "\" & "range_output.jpeg"
 
 
Application.DisplayAlerts = False
 
NomImage = ThisWorkbook.path & "\" & "range_output.jpeg"
UserForm7.Image1.AutoSize = False 'true ou false ça ne fait rien
UserForm7.Image1.PictureSizeMode = fmPictureSizeModeZoom
 
 
UserForm7.Image1.Picture = LoadPicture(NomImage)
 
 
sh_temp.Delete
 
Wbk.Close
Set Wbk1 = Nothing
Set Wbk = Nothing
 
Application.DisplayAlerts = True
Application.ScreenUpdating = True
 
End Sub

si je mets à cette ligne ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Set pic_rng = Sheets(1).Range("A5:K9") 'faire le xlendup plus tard
j'obtiens cela dans mon userform7.image1
Nom : ligne plus grosse.jpg
Affichages : 378
Taille : 58,8 Ko
des lignes lisibles et grosses

si je veux tout le contenu de mon fichier alors je mets ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Set pic_rng = Sheets(1).Range("A5:K203") 'faire le xlendup plus tard
sachant que dans 5 jours le K203 sera peut être passé à K252 par exemple

j'obtiens comme image alors ceci dans mon userform7.image1
Nom : toutes les lignes.jpg
Affichages : 359
Taille : 113,9 Ko
tout est comprimé et j'en suis déprimé

comment faire pour qu'avec beaucoup de ligne j'obtienne le même résultat qu'avec 5 lignes par exemple. j'ai l'impression que prendre de "A5:K203" il n' y a pas "de mise à l'échelle" et qu'il faudrait faire 5 lignes par 5 lignes enregistrer dans une image et autant d'image que j'aurai de bloc de 5 images mais c'est ingérable.


En espérant exposé clairement mon soucis.
Merci d'avance si vous avez astuce ou idée.