Worksheet_Change et Target : Problème avec Range sur une autre feuille !

JLE

XLDnaute Junior
Bonjour à tous.
Je tiens déjà à remercier tous le monde pour toutes ces années à piocher dans les solutions données par tous les spécialistes !
Aujourd'hui c'est à mon tour de présenter mon problème.
Dans une macro évènementielle, il y a une ligne (noté en '!!!!!!!!!!!!!!!!!!!!cette ligne!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!) qui provoque une erreur 1004.
J'ai déjà tenter de la changer par un cells(a,b).select, ou activecell.find("***").select, mais rien à faire.
Je ne me heurte pas souvent à un problème dans excel, surtout grâce au forum, mais là, je ne comprend pas pourquoi cela ne marche pas, je pense que cela doit venir du Target dans la première feuille.... J'ai beau cherché, je m'en remets à vous.
Avez vous une solution ?
Merci...


--------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
'On Error Resume Next
'Application.ScreenUpdating = False
If Intersect(Target, Range("G3:G101")) Is Nothing Then Exit Sub
Target.Select
i = ActiveCell.Row - 2
If Target.Offset(0, 2).Value <> "²" And Target.Value >= 1 And Target.Value <= 24 Then
'If ActiveCell.Value >= 1 And ActiveCell.Value <= 24 Then

Sheets("Schémas COUPE").Select
ActiveSheet.Shapes("refimage").Copy
Sheets("Débit horizontal").Select
ActiveCell.Offset(0, 1).Select
ActiveSheet.Paste
ActiveSheet.Pictures("refimage").Name = "Image" & i
p = i + 2
ActiveWorkbook.Names.Add Name:="AdrPhoto" & i, RefersToR1C1:="=OFFSET('schémas COUPE'!R2C2,MATCH('débit horizontal'!R" & p & "C7,OFFSET('schémas COUPE'!R2C1,,,COUNTA('schémas COUPE'!C1)-1),0)-1,0)"
Selection.Formula = "=AdrPhoto" & i
ActiveCell.Offset(0, 2).Select
Target.Offset(0, 2).Value = "²"
Sheets("Schémas COUPE").Select
ActiveSheet.Shapes("refimage2").Copy
Sheets("Débit").Select

Range("R9").select '!!!!!!!!!!!!!!!!!!!!cette ligne!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

r = 9
f = 18 + i
Cells(r, f).Select
ActiveSheet.Paste
ActiveSheet.Pictures("refimage2").Name = "Image" & i
Else
If Target.Value = "" Then
ActiveSheet.Shapes("Image" & i).Delete
ActiveWorkbook.Names("AdrPhoto" & i).Delete
Target.Offset(0, 2).Value = ""
'Target.Value = "0"
'Target.Select
Exit Sub
End If
End If
'Application.ScreenUpdating = True
End Sub
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87