Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

écriture code par macro

7 réponses
Avatar
Winnie
bonjour,

pour complet=E9 la questin d'Eric Renaud sur l'=E9criture de=20
code par macro, peut on le faire si l'=E9diteur VB est=20
ferm=E9 ? Ouvert =E7a marche tr=E8s bien, mais ferm=E9 j'ai=20
l'erreur "l'indice n'appartient pas =E0 la selection" =E0 la=20
ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance

7 réponses

Avatar
Vincent.
Bonjour,
Personnellement, je n'ai jamais constaté de bug lié à la
fermeture de l'éditeur VB. Pourrais-tu me donner un
exemple concret ?
Une première piste tout de même pour pallier cette
bizarrerie comportementale d'XL : nommer le module en
question. Et a priori, si tu n'as pas renommer le
CodeName, ça donne :
ActiveWorkbook.VBProject.VBComponents
("ThisWorkbook").CodeModule
Le thisworkbook ne faisant évidemment pas référence au
classeur porteur de la macro (les guillemets sont là pour
le rappeler !)
Si ça éclaire pas, ça fait avancer.
A+

-----Message d'origine-----
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture de
code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à la
ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance
.



Avatar
RENAUD Eric
Pour tout dire, j'écris ce code à la demande (par un clic sur un bouton
d'une barre personnalisée), sur le classeur actif et sur la feuille
souhaité. Mon code ajoute deux repères H et V pour améliorer la lisibilité
des données.
Je n'ai pas contasté de problèmes et l'éditeur est fermé.
J'ajouterai qu'il faut installer la référence à Microsoft Visual Basic For
Applications Extensibility 5.3



"Winnie" a écrit dans le message de
news:3faa01c472fe$029c8bd0$
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture de
code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à la
ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance
Avatar
Winnie
merci Vincent et Eric,

vos solutions m'ont aidée et je n'ai plus de message
d'erreur.
Est-til possible de faire en sorte que l'éditeur VB ne
reste pas ouvert après le traitement ? Car ça risque de
gêné certains utilisateurs qui ne connaisse pas cette
fenêtre ?

D'avance merci.
-----Message d'origine-----
Pour tout dire, j'écris ce code à la demande (par un
clic sur un bouton

d'une barre personnalisée), sur le classeur actif et sur
la feuille

souhaité. Mon code ajoute deux repères H et V pour
améliorer la lisibilité

des données.
Je n'ai pas contasté de problèmes et l'éditeur est fermé.
J'ajouterai qu'il faut installer la référence à
Microsoft Visual Basic For

Applications Extensibility 5.3



"Winnie" a écrit dans le
message de

news:3faa01c472fe$029c8bd0$
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture de
code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à la
ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance


.



Avatar
Vincent.
Salut Winnie !
De rien...
Et oui c'est tout à fait possible (et même assez judicieux
pour débugger une macro longue, les macros tournant plus
lentement avec vbe ouvert... astuce XLabo !!) :

Dim EtatVBE As Boolean

'pour sauver l'état de la fenêtre vbe
EtatVBE = Application.VBE.MainWindow.Visible

'Pour fermer la fenêtre de l'éditeur
Application.VBE.MainWindow.Visible = False

'.../...

'Pour remettre la fenêtre dans son état initial
Application.VBE.MainWindow.Visible = EtatVBE

A+

Vincent.

-----Message d'origine-----
merci Vincent et Eric,

vos solutions m'ont aidée et je n'ai plus de message
d'erreur.
Est-til possible de faire en sorte que l'éditeur VB ne
reste pas ouvert après le traitement ? Car ça risque de
gêné certains utilisateurs qui ne connaisse pas cette
fenêtre ?

D'avance merci.
-----Message d'origine-----
Pour tout dire, j'écris ce code à la demande (par un
clic sur un bouton

d'une barre personnalisée), sur le classeur actif et sur
la feuille

souhaité. Mon code ajoute deux repères H et V pour
améliorer la lisibilité

des données.
Je n'ai pas contasté de problèmes et l'éditeur est fermé.
J'ajouterai qu'il faut installer la référence à
Microsoft Visual Basic For

Applications Extensibility 5.3



"Winnie" a écrit dans le
message de

news:3faa01c472fe$029c8bd0$
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture de
code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à la
ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance


.

.





Avatar
Vincent.
Et puisqu'on en parle, une autre série pour accélérer un
peu le code pour les gens ayant le compagnon affiché :

Dim EtatCompagnon As Boolean
EtatCompagnon = Assistant.Visible
If EtatCompagnon Then: Assistant.Visible = False
Assistant.Visible = EtatCompagnon

A+

-----Message d'origine-----
merci Vincent et Eric,

vos solutions m'ont aidée et je n'ai plus de message
d'erreur.
Est-til possible de faire en sorte que l'éditeur VB ne
reste pas ouvert après le traitement ? Car ça risque de
gêné certains utilisateurs qui ne connaisse pas cette
fenêtre ?

D'avance merci.
-----Message d'origine-----
Pour tout dire, j'écris ce code à la demande (par un
clic sur un bouton

d'une barre personnalisée), sur le classeur actif et sur
la feuille

souhaité. Mon code ajoute deux repères H et V pour
améliorer la lisibilité

des données.
Je n'ai pas contasté de problèmes et l'éditeur est fermé.
J'ajouterai qu'il faut installer la référence à
Microsoft Visual Basic For

Applications Extensibility 5.3



"Winnie" a écrit dans le
message de

news:3faa01c472fe$029c8bd0$
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture de
code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à la
ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance


.

.





Avatar
Winnie
merci infiniment Vincent pour ces informations !


-----Message d'origine-----
Salut Winnie !
De rien...
Et oui c'est tout à fait possible (et même assez
judicieux

pour débugger une macro longue, les macros tournant plus
lentement avec vbe ouvert... astuce XLabo !!) :

Dim EtatVBE As Boolean

'pour sauver l'état de la fenêtre vbe
EtatVBE = Application.VBE.MainWindow.Visible

'Pour fermer la fenêtre de l'éditeur
Application.VBE.MainWindow.Visible = False

'.../...

'Pour remettre la fenêtre dans son état initial
Application.VBE.MainWindow.Visible = EtatVBE

A+

Vincent.

-----Message d'origine-----
merci Vincent et Eric,

vos solutions m'ont aidée et je n'ai plus de message
d'erreur.
Est-til possible de faire en sorte que l'éditeur VB ne
reste pas ouvert après le traitement ? Car ça risque de
gêné certains utilisateurs qui ne connaisse pas cette
fenêtre ?

D'avance merci.
-----Message d'origine-----
Pour tout dire, j'écris ce code à la demande (par un
clic sur un bouton

d'une barre personnalisée), sur le classeur actif et
sur



la feuille
souhaité. Mon code ajoute deux repères H et V pour
améliorer la lisibilité

des données.
Je n'ai pas contasté de problèmes et l'éditeur est
fermé.



J'ajouterai qu'il faut installer la référence à
Microsoft Visual Basic For

Applications Extensibility 5.3



"Winnie" a écrit dans le
message de

news:3faa01c472fe$029c8bd0$
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture
de



code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à
la



ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance


.

.


.






Avatar
Vincent.
Mais de rien, ce fut un réel plaisir !

-----Message d'origine-----

merci infiniment Vincent pour ces informations !


-----Message d'origine-----
Salut Winnie !
De rien...
Et oui c'est tout à fait possible (et même assez
judicieux

pour débugger une macro longue, les macros tournant plus
lentement avec vbe ouvert... astuce XLabo !!) :

Dim EtatVBE As Boolean

'pour sauver l'état de la fenêtre vbe
EtatVBE = Application.VBE.MainWindow.Visible

'Pour fermer la fenêtre de l'éditeur
Application.VBE.MainWindow.Visible = False

'.../...

'Pour remettre la fenêtre dans son état initial
Application.VBE.MainWindow.Visible = EtatVBE

A+

Vincent.

-----Message d'origine-----
merci Vincent et Eric,

vos solutions m'ont aidée et je n'ai plus de message
d'erreur.
Est-til possible de faire en sorte que l'éditeur VB ne
reste pas ouvert après le traitement ? Car ça risque de
gêné certains utilisateurs qui ne connaisse pas cette
fenêtre ?

D'avance merci.
-----Message d'origine-----
Pour tout dire, j'écris ce code à la demande (par un
clic sur un bouton

d'une barre personnalisée), sur le classeur actif et
sur



la feuille
souhaité. Mon code ajoute deux repères H et V pour
améliorer la lisibilité

des données.
Je n'ai pas contasté de problèmes et l'éditeur est
fermé.



J'ajouterai qu'il faut installer la référence à
Microsoft Visual Basic For

Applications Extensibility 5.3



"Winnie" a écrit dans le
message de

news:3faa01c472fe$029c8bd0$
bonjour,

pour completé la questin d'Eric Renaud sur l'écriture
de



code par macro, peut on le faire si l'éditeur VB est
fermé ? Ouvert ça marche très bien, mais fermé j'ai
l'erreur "l'indice n'appartient pas à la selection" à
la



ligne With ActiveWorkbook.VBProject.VBComponents
(ActiveWorkbook.CodeName).CodeModule

merci d'avance


.

.


.


.