L'indice n'appartient pas à la sélection sur VBComponents
7 réponses
René Delcourt
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode)
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Clément Marcotte
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche "Faire confiance au projet Visual Basic".
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche
"Faire confiance au projet Visual Basic".
"René Delcourt" <rde@intras.ch> a écrit dans le message de news:
5655BF87-00D3-4360-BA0E-1D59F2313E21@microsoft.com...
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString
(leCode)
End Sub
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche "Faire confiance au projet Visual Basic".
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
René Delcourt
Déjà coché!!! Merci quanf même -- René Delcourt
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche "Faire confiance au projet Visual Basic".
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
Déjà coché!!!
Merci quanf même
--
René Delcourt
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche
"Faire confiance au projet Visual Basic".
"René Delcourt" <rde@intras.ch> a écrit dans le message de news:
5655BF87-00D3-4360-BA0E-1D59F2313E21@microsoft.com...
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString
(leCode)
End Sub
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche "Faire confiance au projet Visual Basic".
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
Clément Marcotte
Bonjour,
Sinon cela pourrait être un mauvais nom de feuille ou une plage incomplète ou qui déborde ou quelque chose dans le genre.
"René Delcourt" a écrit dans le message de news:
Déjà coché!!! Merci quanf même -- René Delcourt
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche "Faire confiance au projet Visual Basic".
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
Bonjour,
Sinon cela pourrait être un mauvais nom de feuille ou une plage incomplète
ou qui déborde ou quelque chose dans le genre.
"René Delcourt" <rde@intras.ch> a écrit dans le message de news:
23B910A3-B1CC-4AB1-B63E-5DB4DA0E505C@microsoft.com...
Déjà coché!!!
Merci quanf même
--
René Delcourt
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et
coche
"Faire confiance au projet Visual Basic".
"René Delcourt" <rde@intras.ch> a écrit dans le message de news:
5655BF87-00D3-4360-BA0E-1D59F2313E21@microsoft.com...
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString
(leCode)
End Sub
Sinon cela pourrait être un mauvais nom de feuille ou une plage incomplète ou qui déborde ou quelque chose dans le genre.
"René Delcourt" a écrit dans le message de news:
Déjà coché!!! Merci quanf même -- René Delcourt
Bonjour,
En allant à la pêche:
Va voir dans (Excel 2002, cela doit se ressembler pour Excel 2003) :
Outils - options - Sécurité - Sécurité des macros - Sources fiable et coche "Faire confiance au projet Visual Basic".
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
Trirème
Bonsoir René Quelle est la ligne où survient l'erreur ? Est ce que 'Cible' est initialisé avec du texte ? Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-) Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion?
Bonsoir René
Quelle est la ligne où survient l'erreur ?
Est ce que 'Cible' est initialisé avec du texte ?
Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-)
Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode)
End Sub
Bonsoir René Quelle est la ligne où survient l'erreur ? Est ce que 'Cible' est initialisé avec du texte ? Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-) Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion?
papou
Bonjour Après test pas d'erreur. Si ta macro FeuilleEtCode est lancée depuis un contrôle CommandButton de la boîte à Outils Contrôles, mets la propriété TakeFocusOnClick à False. Sinon ?
Cordialement Pascal
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
Bonjour
Après test pas d'erreur.
Si ta macro FeuilleEtCode est lancée depuis un contrôle CommandButton de la
boîte à Outils Contrôles, mets la propriété TakeFocusOnClick à False.
Sinon ?
Cordialement
Pascal
"René Delcourt" <rde@intras.ch> a écrit dans le message de news:
5655BF87-00D3-4360-BA0E-1D59F2313E21@microsoft.com...
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString
(leCode)
End Sub
Bonjour Après test pas d'erreur. Si ta macro FeuilleEtCode est lancée depuis un contrôle CommandButton de la boîte à Outils Contrôles, mets la propriété TakeFocusOnClick à False. Sinon ?
Cordialement Pascal
"René Delcourt" a écrit dans le message de news:
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion? -- René Delcourt
René Delcourt
c'est la ligne
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) Merci de vos suggestions. J'ai changé d'optique et au lieu de créer une feuille, j'en utilise une existante dans lequel je mets la macro événementielle. -- René Delcourt
Bonsoir René Quelle est la ligne où survient l'erreur ? Est ce que 'Cible' est initialisé avec du texte ? Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-) Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion?
c'est la ligne
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode)
Merci de vos suggestions.
J'ai changé d'optique et au lieu de créer une feuille, j'en utilise une
existante dans lequel je mets la macro événementielle.
--
René Delcourt
Bonsoir René
Quelle est la ligne où survient l'erreur ?
Est ce que 'Cible' est initialisé avec du texte ?
Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-)
Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode)
End Sub
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) Merci de vos suggestions. J'ai changé d'optique et au lieu de créer une feuille, j'en utilise une existante dans lequel je mets la macro événementielle. -- René Delcourt
Bonsoir René Quelle est la ligne où survient l'erreur ? Est ce que 'Cible' est initialisé avec du texte ? Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-) Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-dessus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromString (leCode) End Sub
Une suggestion?
anonymousA
Bonjour,
le problème ne serait-il pas lié au fait que Cible est compris par VBA comme une variable et que si cette variable ne contient rien ( cependant tu ne le dis pas .) alors forcément CodeNom ne recoit rien et du coup VBComponents(CodeNom) n'a pas de sens ce qui fait que ca se plante à ce moment là
A+
René Delcourt wrote:
c'est la ligne
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromS tring (leCode) Merci de vos suggestions. J'ai changé d'optique et au lieu de créer une feuille, j'en utilise u ne existante dans lequel je mets la macro événementielle. -- René Delcourt
Bonsoir René Quelle est la ligne où survient l'erreur ? Est ce que 'Cible' est initialisé avec du texte ? Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-) Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-des sus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddF romString (leCode) End Sub
Une suggestion?
Bonjour,
le problème ne serait-il pas lié au fait que Cible est compris par
VBA comme une variable et que si cette variable ne contient rien (
cependant tu ne le dis pas .) alors forcément CodeNom ne recoit rien
et du coup VBComponents(CodeNom) n'a pas de sens ce qui fait que ca se
plante à ce moment là
A+
René Delcourt wrote:
c'est la ligne
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromS tring (leCode)
Merci de vos suggestions.
J'ai changé d'optique et au lieu de créer une feuille, j'en utilise u ne
existante dans lequel je mets la macro événementielle.
--
René Delcourt
Bonsoir René
Quelle est la ligne où survient l'erreur ?
Est ce que 'Cible' est initialisé avec du texte ?
Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-)
Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-des sus
Sub FeuilleEtCode()
MsgBox ("Maintenant")
For Each F In Worksheets
If F.Name = Cible Then
CodeNom = F.CodeName
Exit For
End If
Next
leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As
PivotTable)" & vbLf & "recap" & vbLf & "End Sub"
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddF romString (leCode)
End Sub
le problème ne serait-il pas lié au fait que Cible est compris par VBA comme une variable et que si cette variable ne contient rien ( cependant tu ne le dis pas .) alors forcément CodeNom ne recoit rien et du coup VBComponents(CodeNom) n'a pas de sens ce qui fait que ca se plante à ce moment là
A+
René Delcourt wrote:
c'est la ligne
Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddFromS tring (leCode) Merci de vos suggestions. J'ai changé d'optique et au lieu de créer une feuille, j'en utilise u ne existante dans lequel je mets la macro événementielle. -- René Delcourt
Bonsoir René Quelle est la ligne où survient l'erreur ? Est ce que 'Cible' est initialisé avec du texte ? Que contient CodeNom en sortie de boucle ?
Que des ??? à offrir ;-) Trirème
Bonjour,
Je m'arrache les cheveux sur ce code qui génère le message ci-des sus
Sub FeuilleEtCode() MsgBox ("Maintenant") For Each F In Worksheets If F.Name = Cible Then CodeNom = F.CodeName Exit For End If Next leCode = "Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)" & vbLf & "recap" & vbLf & "End Sub" Application.VBE.ActiveVBProject.VBComponents(CodeNom).CodeModule.AddF romString (leCode) End Sub