erreur élément introuvable après insertion d'un nom

DEDOuze

XLDnaute Nouveau
Bonjour à tous et longue vie au forum !

je viens solliciter votre aide et remercie par avance ceux qui pourront m'aider.
étant donné que mon fichier fait plus de 50 ko, je l'ai déposé sur mon site

jespère que c'est ok avec la charte du forum
mon problème :
ma feuille excel utilise deux macros qui me permettent de déplacer le "menu" bleu et jaune lorsqu'on scroll et clique vers le bas et ça marche nikel
là où ça coince c'est quand j'insère un nom (MATIERE1 M4:M100) (pour avoir une liste déroulante en C11), j'ai l'erreur suivante :
erreur d'execution -2147024809 (80070057) l'élément portant ce nom est introuvable.
J'ai beau relancer la macro (dressage) l'élémnt reste introuvable, et là je suis paumé.

je précise que sur la feuille jointe le nom MATIERE1 n'a pas été créé pour que vous ayez en main la version qui ne plante pas. (Il y aura 24 matieres plus une liste d'élèves.)

encore merci par avance et bonne journée.

DEDOu
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : erreur élément introuvable après insertion d'un nom

Bonjour DEDOuze

A tester

remplacer

Code:
For Each n In Names
         leContenu = Mid(ActiveWorkbook.Names(n.Name), 3, _
            (Len(ActiveWorkbook.Names(n.Name)) - 3))
        With ActiveSheet.Shapes(leContenu)
        If leTop < .Top And leTop > -1 Then GoTo suite1
        leTop = .Top
suite1:
        If leLeft < .Left And leLeft > -1 Then GoTo suite2
        leLeft = .Left
suite2:
        End With
   Next n


par

Code:
For Each n In Names
   If n.Name <> "Matiere1" Then
      leContenu = Mid(ActiveWorkbook.Names(n.Name), 3, _
            (Len(ActiveWorkbook.Names(n.Name)) - 3))
        With ActiveSheet.Shapes(leContenu)
        If leTop < .Top And leTop > -1 Then GoTo suite1
        leTop = .Top
suite1:
        If leLeft < .Left And leLeft > -1 Then GoTo suite2
        leLeft = .Left
suite2:
        End With
 End If
Next n
 
Dernière édition:

DEDOuze

XLDnaute Nouveau
Re : erreur élément introuvable après insertion d'un nom

Bonjour PierreJean
merci de t'intéresser à mon problème
je viens de tester, hélas, 3 fois, ça plante
il bloque sur cette ligne :

Code:
With ActiveSheet.Shapes(leContenu)
avec la meme erreur
 

DEDOuze

XLDnaute Nouveau
Re : erreur élément introuvable après insertion d'un nom

wowowow !
ça marche : ))
excellent, un grand merci à toi
je vais tâcher maintenant d'ajouter matiere2 jusqu'à matiere24
je peux les ajouter dans cette ligne ? :
If n.Name <> "Matiere1" Then
 

DEDOuze

XLDnaute Nouveau
Re : erreur élément introuvable après insertion d'un nom

Bonjour le forum : )
de retour après moult recherches et essais sans succès
je reprends le bout de code de pierrejean
Code:
For Each n In Names
   If n.Name <> "Matiere1" Then
      leContenu = Mid(ActiveWorkbook.Names(n.Name), 3, _
            (Len(ActiveWorkbook.Names(n.Name)) - 3))
        With ActiveSheet.Shapes(leContenu)
        If leTop < .Top And leTop > -1 Then GoTo suite1
        leTop = .Top
suite1:
        If leLeft < .Left And leLeft > -1 Then GoTo suite2
        leLeft = .Left
suite2:
        End With
 End If
Next n

comment puis je ajouter d'autres noms à
If n.Name <> "Matiere1" Then ... ?
il me faut "Matiere2" jusqu'à "Matiere25"
merci d'avance et bonne journée

DEDOu
 

pierrejean

XLDnaute Barbatruc
Re : erreur élément introuvable après insertion d'un nom

Re

A tester

VB:
For Each n In Names
If Instr(n.Name,"Matiere")=0 Then
leContenu = Mid(ActiveWorkbook.Names(n.Name), 3, _
(Len(ActiveWorkbook.Names(n.Name)) - 3))
With ActiveSheet.Shapes(leContenu)
If leTop < .Top And leTop > -1 Then GoTo suite1
leTop = .Top
suite1:
If leLeft < .Left And leLeft > -1 Then GoTo suite2
leLeft = .Left
suite2:
End With
End If
Next n
 
Dernière édition:

DEDOuze

XLDnaute Nouveau
Re : erreur élément introuvable après insertion d'un nom

Non de Zeus! C'est là que je me rends compte du chemin qu'il me reste à parcourir.
Bravo pierrejean ! Tu es précieux.
Jai testé 5 insertions, aucun problème : )))
je continue mon p'tit journal
Encore merci.
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 668
Messages
2 090 739
Membres
104 643
dernier inscrit
adriano22