Bonjour,
j'explique en quelques mots mon projet:
1: sur la première sheet, je voudrais insérer une image automatique par article avec prix, réf, ... que j'ajouterai moi-meme
2: ensuite par article j'aimerai faire une feuille automatique reprenant divers information pour une gestion des stocks
j'ai déjà réussi à insérer les images automatiquement mais comme il y aura sans doute de nouveaux articles, mon code insère de nouveau les meme photo déjà présente et donc je me retrouve avec deux photos superposées.
Serait-il possible de vérifier la présence de photo et intégrer seulement celles manquantes et par la meme occasion ajuster la largeur des cellules à celle de la photo la plus grande?
voici mon code pour la première partie insertion d'image sheet 1:
Pour la seconde partie j'ai pas encore essayé mais j'espère régler le premier point avant.
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 Sub insertion_image() Dim i As Integer, path As String, sep As String, img As String sep = Application.PathSeparator path = ActiveWorkbook.path & sep & "images" & sep ' balaye les xxx lignes For i = 1 To 15 ' indique à Excel où insérer l'image Cells(i, 2).Select ' insère une image jpg img = path & Cells(i, 1).Value & ".jpg" If Dir(img) = "" Then MsgBox "Image """ & img & """ non trouvée" Else ActiveSheet.Pictures.Insert(path & Cells(i, 1).Value & ".jpg").Select End If With Selection .ShapeRange.LockAspectRatio = msoFalse .ShapeRange.Height = 30# .ShapeRange.Width = 100# .ShapeRange.Rotation = 0# End With ' ajuste la hauteur de la ligne, avec une marge inférieure de 10 pts Rows(i).RowHeight = Selection.Height + 10 Selection.Top = Cells(i, 2).Top Selection.Left = Cells(i, 2).Left Next Columns(2).ColumnWidth = Selection.Width End Sub
Merci d'avance
Partager