Bonjour,
mon application en cours crée une succession de codes-barres dans des images au format bmp et chacun d'eux est sauvegardé sur le répertoire de l'application. Tout de suite après la création, j'insère ces images dans une feuille Excel. Tout va bien jusque là. Après avoir sauvegardé le classeur et fermé l'application, je supprime les images. C'est là que vient le problème: dans le classeur, à la place de chaque image, j'ai le message suivant: "Impossible d'afficher l'image liée. Le fichier a peut-être été déplacé, renommer ou supprimé..."
Voici le codeQuand je supprime les trois dernières lignes, les images s'affichent correctement dans le classeur. Quelqu'un peut-il m'aider à comprendre comment fonctionne ce lien vers les images et comment contourner le problème pour pouvoir faire le ménage parmi les images sans dégrader le classeur excel?
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 Decal = 3 For j = 1 To NbCat jdec = j + Decal Contenu = CatAIDA(j) Call CodeBarreBMP(j, Contenu) wsExcel = wbExcel.Worksheets("AIDA") wsExcel.Activate() wsExcel.Cells(1, jdec).select With wsExcel.Pictures.Insert(My.Application.Info.DirectoryPath + "\Image" & j & ".bmp") With .ShapeRange .LockAspectRatio = True .Width = 70 .Height = 160 End With .Left = wsExcel.Cells(1, jdec).Left .Top = wsExcel.Cells(1, jdec).Top .Placement = 1 .PrintObject = True End With Next appExcel.Visible = True wbExcel.Save() wbExcel.Close() 'Fermeture du classeur Excel appExcel.Quit() 'Fermeture de l'application Excel appExcel = Nothing wbExcel = Nothing For Each ObjPro As Process In Process.GetProcessesByName("EXCEL") ObjPro.Kill() Next For j = 1 To NbCat My.Computer.FileSystem.DeleteFile(My.Application.Info.DirectoryPath + "\Image" & j & ".bmp") Next
D'avance merci de votre aide
Partager