Ligne du VBE en cours d'exécution

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dionys0s

XLDnaute Impliqué
Bonjour le forum

j'aimerais savoir s'il est possible de récupérer la valeur de la ligne en cours d'exécution dans le code en cours d'exécution. Un truc de ce genre là (mais la commande ActiveLine ou approchant n'existe pas...) :

VB:
Option Explicit
Option Base 1
Option Compare Text

Public MaLigneEnCours As Integer 'Faut pas déconner, j'ai moins de 32 767 lignes de code dans mon module

Sub MaMacro()

MsgBox Application.VBE.ActiveCodePane.CodeModule.ActiveLine    'Afficherait 9
MaLigneEnCours = Application.VBE.ActiveCodePane.CodeModule.ActiveLine    'Renverrait 10
MsgBox MaLigneEnCours 'Afficherait 10

End Sub

Je précise que ce n'est pas pour faire de la gestion d'erreur (donc sans utiliser Erl) et donc que la solution consistant à numéroter toutes les lignes à la main en début de ligne ne m'est à priori d'aucune utilité. Je souhaite récupérer le numéro de ligne tel qu'il s'affiche dans le VBE (cf. image Barre d'outil.jpg).

D'avance merci pour votre aide ^^
 
Re : Ligne du VBE en cours d'exécution

Ca date mon codage de VBE, mais j'ai ceci qui peut peut être te donner une piste.
De plus, ce code est écrit dans un module de classe.

strActiveLine = cmo.Lines(lngStartLine, 1)
strSelectLine = Workbooks(strNomWorkbook).VBProject.VBComponents(strMainWindow).CodeModule.Lines(lngStartLine, 1)

Bon courage !
 
Re : Ligne du VBE en cours d'exécution

Re,

Yohann, je parle de la ligne de code dans le VBE.

Hellboy, peux-tu me préciser ? C'est égal à combien ? C'est quoi cmo ? D'avance merci 🙂

EDIT : je me suis ma exprimé. Pour Hellboy

Je ne comprends pas grand chose à ton code, dans la mesure où tu utilises 6 variables et je ne sais pas comment elles fonctionnent ou ce qu'elles contiennent (notamment pour cmo).
 
Dernière édition:
Re : Ligne du VBE en cours d'exécution

Re,

bah ça je sais faire justement. Moi ce que je souhaite récupérer, c'est le numéro de la ligne de code dans le VBE qui est exécutée (c'est à dire l'équivalent du premier des deux paramètres de .Lines)
 
Re : Ligne du VBE en cours d'exécution

Re,

bah ça je sais faire justement. Moi ce que je souhaite récupérer, c'est le numéro de la ligne de code dans le VBE qui est exécutée (c'est à dire l'équivalent du premier des deux paramètres de .Lines)

Dim StartLine As Long
Dim EndLine As Long
Dim StartCol As Long
Dim EndCol As Long

Application.VBE.ActiveCodePane.GetSelection StartLine, StartCol, EndLine, EndCol
strSelectLine = Application.VBE.ActiveCodePane.CodeModule.Lines(StartLine, 1)

Faite un peu de Gym. avec ce code et c'est certain que vous arrivez à vos fins.
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
969
Z
Réponses
3
Affichages
1 K
Zifox
Z
G
Réponses
9
Affichages
1 K
R
Réponses
3
Affichages
4 K
R
N
Réponses
5
Affichages
3 K
Nicocotte125
N
N
Réponses
17
Affichages
3 K
ninajams
N
Retour