Gestion des erreurs sur une macro

Le
jean-francois LEGRAS
Bonjour à tous,


J'ai un gros souci et ca serait vraiment génial si vous pouviez m'aider ;
j'ai une macro (ci-dessous) qui va chercher des images jpeg dans un dossier.
Le problème, c'est que lorsque la photo n'existe pas, la macro bug

Ca bloque à : "Range(cible).Select
'ActiveSheet.Pictures.Insert( _

' chemin) _"



Ce qu'il faudrait c'est que la macro "saute" la ligne. Est-ce possible ?



Merci beaucoup d'avance !!!!

Cordialement

JF



Sub ()

'

' test Macro

' Macro enregistrée le 24/05/2008 par ADMIN

'



'

For i = 267 To 1696

code = "A" & i

Range(code).Select

Source = ActiveCell.FormulaR1C1

' Range(code).Copy Source

chemin = "C:Documents and SettingslbonnefoyMy DocumentsPhotos cat
2009" & Source & ".jpg"

cible = "G" & i

Range(cible).Select

'ActiveSheet.Pictures.Insert( _

' chemin) _

' .Select

ActiveSheet.Pictures.Insert(chemin).Select

Selection.ShapeRange.ScaleWidth 0.24, msoFalse, msoScaleFromTopLeft

Selection.ShapeRange.ScaleHeight 0.24, msoFalse, msoScaleFromTopLeft

Selection.ShapeRange.IncrementLeft 0.75

Selection.ShapeRange.IncrementLeft 1.5

Selection.ShapeRange.IncrementLeft 0.75

Selection.ShapeRange.IncrementLeft 0.75

Next

End Sub
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Mgr T. Banni
Le #18703211
bonjour jf
tu écris sur la ligne au-dessus de "Range(cible).Select...

On Error Resume Next

HTH
Mgr T.B.

"jean-francois LEGRAS" %232vz%

Bonjour à tous,


J'ai un gros souci et ca serait vraiment génial si vous pouviez m'aider ;
j'ai une macro (ci-dessous) qui va chercher des images jpeg dans un
dossier. Le problème, c'est que lorsque la photo n'existe pas, la macro
bug

Ca bloque à : "Range(cible).Select
'ActiveSheet.Pictures.Insert( _

' chemin) _"



Ce qu'il faudrait c'est que la macro "saute" la ligne. Est-ce possible ?



Merci beaucoup d'avance !!!!

Cordialement

JF



Sub ()

'

' test Macro

' Macro enregistrée le 24/05/2008 par ADMIN

'



'

For i = 267 To 1696

code = "A" & i

Range(code).Select

Source = ActiveCell.FormulaR1C1

' Range(code).Copy Source

chemin = "C:Documents and SettingslbonnefoyMy DocumentsPhotos cat
2009" & Source & ".jpg"

cible = "G" & i

Range(cible).Select

'ActiveSheet.Pictures.Insert( _

' chemin) _

' .Select

ActiveSheet.Pictures.Insert(chemin).Select

Selection.ShapeRange.ScaleWidth 0.24, msoFalse, msoScaleFromTopLeft

Selection.ShapeRange.ScaleHeight 0.24, msoFalse, msoScaleFromTopLeft

Selection.ShapeRange.IncrementLeft 0.75

Selection.ShapeRange.IncrementLeft 1.5

Selection.ShapeRange.IncrementLeft 0.75

Selection.ShapeRange.IncrementLeft 0.75

Next

End Sub



michdenis
Le #18704151
'---------------------------------------
Sub test()
Dim Chemin As String, Source As string
'Variable contenant le chemin de tes photos
Chemin = "C:Documents and SettingslbonnefoyMy DocumentsPhotos cat 2009"
'Adapte selon le nom de ta feuille
With Worksheets("Feuil1")
For I = 267 To 1696
'Source = Chemin complet de la photo
Source = Chemin & .Range("A" & I) & "jpg"
'Si le chemin ou la photo n'existe pas
' rien ne se passe, on va à la suivante
If Dir(Source) <> "" Then
'si le chemin existe, on insère la photo En Gx
'au dimension de la cellule Gx
InsérerImage .Name, .Range("G" & I), Source
End If
Next
End With
End Sub
'---------------------------------------
Sub InsérerImage(Feuille As String, RgImage As Range, NomImage As String)
Dim Rg As Range
Set Rg = Worksheets(Feuille).Range(RgImage.Address)
With Rg
Largeur = .Offset(, 1)(, .Columns.Count).Left - .Left
Hauteur = .Offset(.Rows.Count).Top - .Item(1).Top
Set Image = Worksheets(Feuille).Pictures.Insert(NomImage)
End With
With Image
.Left = Rg.Left
.Top = Rg.Top
'Largeur de l'image
Image.Width = Largeur
'Hauteur de l'image
Image.Height = Hauteur
'Est-ce que l'image doit se déplacer avec les cellules
'voici les 3 constantes possibles
.Placement = xlFreeFloating 'or xlmove or xlMoveAndSize
'Verrouillé ou pas
.Locked = True 'or False
End With
Set Rg = Nothing
End Sub
'---------------------------------------



"jean-francois LEGRAS" discussion : #2vz#

Bonjour à tous,


J'ai un gros souci et ca serait vraiment génial si vous pouviez m'aider ;
j'ai une macro (ci-dessous) qui va chercher des images jpeg dans un dossier.
Le problème, c'est que lorsque la photo n'existe pas, la macro bug

Ca bloque à : "Range(cible).Select
'ActiveSheet.Pictures.Insert( _

' chemin) _"



Ce qu'il faudrait c'est que la macro "saute" la ligne. Est-ce possible ?



Merci beaucoup d'avance !!!!

Cordialement

JF



Sub ()

'

' test Macro

' Macro enregistrée le 24/05/2008 par ADMIN

'



'

For i = 267 To 1696

code = "A" & i

Range(code).Select

Source = ActiveCell.FormulaR1C1

' Range(code).Copy Source

chemin = "C:Documents and SettingslbonnefoyMy DocumentsPhotos cat
2009" & Source & ".jpg"

cible = "G" & i

Range(cible).Select

'ActiveSheet.Pictures.Insert( _

' chemin) _

' .Select

ActiveSheet.Pictures.Insert(chemin).Select

Selection.ShapeRange.ScaleWidth 0.24, msoFalse, msoScaleFromTopLeft

Selection.ShapeRange.ScaleHeight 0.24, msoFalse, msoScaleFromTopLeft

Selection.ShapeRange.IncrementLeft 0.75

Selection.ShapeRange.IncrementLeft 1.5

Selection.ShapeRange.IncrementLeft 0.75

Selection.ShapeRange.IncrementLeft 0.75

Next

End Sub
Publicité
Poster une réponse
Anonyme