Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fonction commentaire

3 réponses
Avatar
David
Bonjour =E0 tous,
J'ai cr=E9=E9 une fonction qui va chercher le chemin d'une image et la
place en commentaire dans la cellule.
Mon probl=E8me est le suivant :
1=B0) Je souhaiterai que la cellule prenne la valeur du code (codeart)
qui est entr=E9 en param=E8tre

Voici le code :

Function photo(codeart As String)

'For Each C In Range("G15:G" & Range("G65536").End(xlUp).Row)

Dim url As String
Dim rep As Integer
Dim rep2 As String
Dim codeart2 As String

url =3D "http://10.100.0.72/DATA/ARTICLES/JPG/"

rep =3D codeart / 1000
rep =3D rep * 1000
rep2 =3D Format(rep, "0000000")
url =3D url & rep2 & "/" & codeart & "_PRIN_200.jpg"

With Range(ActiveCell.Address)
On Error Resume Next
.AddComment
.Comment.Shape.Fill.UserPicture url
.Select.Value =3D codeart2

MsgBox (b.Height)
MsgBox (b.Width)

.Comment.Shape.Width =3D 200
.Comment.Shape.Height =3D 200

End With
End Function


Merci d'avance
David

3 réponses

Avatar
David
Oupsss Oubli ;-))

de même quand je tire la première cellule pour incrémenter la valeur
de codeart, cela ne fonctionne pas...
Une idée ??
Avatar
Fdecourt
Bonsoir,

Pour répondre à ta première question, dans ta fonction, avant le End
Sub, ajoute :
photo = codeart

Pour ta deuxième question, c'est normal puisque tu ajoute un
commentaire à la cellule active
Je ferais plutot une fonction avec deux paramètres :

Function photo(codeart As String, adr As Range)
que tu appelle dans Excel ainsi :

=photo("1234567890";A1)

Puis à la place de
With Range(ActiveCell.Address)

je mettrais
With adr

Cordialement,

F.

Function photod(codeart As String, adr As Range)

Dim url As String
Dim rep As Integer
Dim rep2 As String
Dim codeart2 As String
Dim monComment As Comment

url = "http://10.100.0.72/DATA/ARTICLES/JPG/"

rep = codeart / 1000
rep = rep * 1000
rep2 = Format(rep, "0000000")
url = url & rep2 & "/" & codeart & "_PRIN_200.jpg"


On Error Resume Next

Set monComment = adr.AddComment

With monComment
.Shape.Fill.UserPicture url
.Value = codeart2
.Comment.Shape.Width = 200
.Comment.Shape.Height = 200
'MsgBox (b.Height)
'MsgBox (b.Width)
End With
End Function
Avatar
David
Cela fonctionne parfaitement ,
Merci bcq.
David