Problème de routine entre XP et Vista

curiosus43

XLDnaute Nouveau
Bonsoir à tous les Excelnautes,

Sur le site de Jacques BOISGONTIER, j'avais chargé il y a deux ans la routine suivante pour afficher dans les commentaires, des peintures répertoriées dans un fichier et cela sans problème avec Windows XP.
Il y a quelques jours, en voulant ajouter de nouvelles photos, avec un autre ordinateur qui a Windows Vista, et toujours le même Excel 2003, ça plante à la 11e ligne. Quelqu'un pourrait-il me dire pourquoi?


Photos dans commentaires
Avec les photos par Numéro au lieu de par nom

Sub CommentImages()
repertoire = ThisWorkbook.Path & "\"
For Each c In Range("A2", [A65000].End(xlUp))
c.ClearComments
c.AddComment
c.Comment.Text Text:=CStr(c)
fichier = CStr(c.Value) & ".jpg"
If Dir(repertoire & fichier) <> "" Then
c.Comment.Shape.Fill.UserPicture repertoire & fichier
taille = TaillePixelsImage(repertoire, fichier)
c.Comment.Shape.Height = Val(Split(taille, "x")(1)) avec Vista bloque ici!
c.Comment.Shape.Width = Val(Split(taille, "x")(0))
c.Comment.Shape.ScaleHeight 0.8, msoFalse, msoScaleFromTopLeft
c.Comment.Shape.ScaleWidth 0.8, msoFalse, msoScaleFromTopLeft
' j'ai augmenté le ScaleWidth de 0.5 à 0.8 pour agrandir un peu l'image
End If
Next
End Sub

Function TaillePixelsImage(repertoire, fichier)
Set myShell = CreateObject("Shell.Application")
Set myFolder = myShell.Namespace(repertoire)
Set myFile = myFolder.Items.Item(fichier)
TaillePixelsImage = myFolder.GetDetailsOf(myFile, 26)
End Function
 

Statistiques des forums

Discussions
312 505
Messages
2 089 103
Membres
104 032
dernier inscrit
akram.job