Blocage sur insertion

Signaler
Messages postés
31
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
1 février 2007
-
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
-
Salut à tous,

Voilà une petite macro que j'ai écrite :

Private Sub InsererEnTete()

Workbooks.Open Filename:="I:\Private_ISP\PPM\SEPTEMBER 2006\Fichiers ISP\Entete+References.xls"

Rows("1:6").Select
Selection.Copy


Workbooks(NomClasseur).Sheets(1).Activate
Range("A1").Select
Selection.Insert Shift:=xlDown

Workbooks("Entete+References.xls").Close (False)

End Sub

Toutes les variables sont définies et calculées. Il bloque sur la ligne rouge : il copie bien mon entête mais ne passe pas à la suite. A la fin, il me donne un runtime error 13 : type mismatch.

Est ce que quelqu'un a une explication ? Ou mieux, un moyen d'éviter ça ?

Merci pour votre aide,

Lycaon.

3 réponses

Messages postés
141
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
25 octobre 2006

Lu,

remplace ton

Selection.Insert Shift:=xlDown

 par

If Not Intersect(Range("A1"), Selection) Is Nothing Then Rows(6).Insert Shift:=xlDown
Messages postés
31
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
1 février 2007

Merci pour ta réponse.

Je n'ai pas compris pourquoi tu veux me faire tester l'intersection entre les deux plages étant donné qu'elles ne sont pas sur le même classeur.

J'ai quand même essayé mais ça me donne le même résultat. En plus, si je ne me trompe pas, tu essayes de coller une seule ligne (la sixième) et je veux copier une sélection de 6 lignes : je ne sais pas si ça change qqch dans ton code.

Merci encore

Lycaon
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Je n'ai pas testé, mais si tu essayais comme ceci ?


Workbooks(NomClasseur).Sheets(1).Activate
Rows("1:6").Select
Selection.Insert Shift:=xlDown

MPi