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
|
Function Feuille_existe(Feuille_nom As String) As Boolean
' Retourne VRAI si la feuille existe dans le classeur actif
Feuille_existe = False
On Error GoTo erreur
If Len(Sheets(Feuille_nom).Name) > 0 Then
Feuille_existe = True
Exit Function
End If
erreur:
End Function
Sub creer_QRcode()
'
'
'développé par Arnaud LUQUES TORRES
Dim enregistrement As Range
Dim donnee As String
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set sel = Selection.SpecialCells(xlTextValues) 'sélectionne toutes les données de la feuille
If Feuille_existe("QRcodes") Then
Worksheets("QRcodes").Delete 'efface la feuille QRcodes si elle existe
End If
Set newfeuille = Worksheets.Add()
newfeuille.Name = "QRcodes"
Set cellule = newfeuille.Range("A1")
For Each enregistrement In sel
donnee = enregistrement.Value
donnee = "http://api.qrserver.com/v1/create-qr-code/?data=" & donnee & "&size=250x250"
'donnee = "http://api.qrserver.com/v1/create-qr-code/?data=BEGIN%3AVCARD%0AFN%3Aprenom%20Nom%0ATEL%3Atelephone%0AEMAIL%3ACourriel%0AURL%3Ahttp%3A%2F%2Fsiteweb.fr%0AN%3ANom%3Bprenom%0AADR%3Arue%3Bcodepostal%3BVille%0AVERSION%3A3.0%0AEND%3AVCARD%0A&size=315x315"
Set newforme = newfeuille.Shapes.AddShape(msoShapeRectangle, cellule.Left, cellule.Top, 36, 36) '36, 36 indique la taille de la forme
'1 pixel = 0.0353 cm donc 85 pixels = 3cm)
newforme.Name = enregistrement 'nomme l'image en fonction de l'url
newforme.Line.Visible = False 'enlève la ligne de contour
newforme.Fill.UserPicture (donnee) 'insère l'image dans la forme
Set cellule = cellule.Offset(3, 0).Range("A1")
cellule.Value = enregistrement.Value
Set cellule = cellule.Offset(2, 0).Range("A1")
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
'
End Sub |
Partager