la macro de Stephen Bullen (XL97) qui crée
l'arborescense et l'interdépendance des macros d'un classeur
sous forme pseudo graphique avec les notions de parent/enfant ainsi que
d'autres détailles tels que nombre d'appels, tailles etc...
cf ../..
· A straight list of parent/child procedures, useful for checking
the detail
· A summary pivot table of inter-module and intra-module calls, so
you can see at a glance which modules are closely coupled
· A pivot table with the parent procedure names in a page field,
so
you can easily identify which child procedures it calls
· A pivot table with the child procedure names in a page field, so
you can easily identify the procedures that call it
· A complete list of all the procedure calls, shown in a list
structure, enabling you to trace through the procedure flow
../..
http://www.oaltd.co.uk/DLCount/DLCount.asp?fileÊllTree.zip
NB:
petits problemes connus :
c'est en fait un fichier XLA avec une extension XLS,
aprés activation du xls il faut cocher la macro complémentaire: Call Tree
97
petit souci également d'affichage de l'arboresence si la police MS
LineDraw
n'est pas disponible...
"Jac" a écrit dans le message de news:
Bonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom du
module + nom des macros) afin de pouvoir un peu mieux naviguer dans tout
ce
que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
la macro de Stephen Bullen (XL97) qui crée
l'arborescense et l'interdépendance des macros d'un classeur
sous forme pseudo graphique avec les notions de parent/enfant ainsi que
d'autres détailles tels que nombre d'appels, tailles etc...
cf ../..
· A straight list of parent/child procedures, useful for checking
the detail
· A summary pivot table of inter-module and intra-module calls, so
you can see at a glance which modules are closely coupled
· A pivot table with the parent procedure names in a page field,
so
you can easily identify which child procedures it calls
· A pivot table with the child procedure names in a page field, so
you can easily identify the procedures that call it
· A complete list of all the procedure calls, shown in a list
structure, enabling you to trace through the procedure flow
../..
http://www.oaltd.co.uk/DLCount/DLCount.asp?fileÊllTree.zip
NB:
petits problemes connus :
c'est en fait un fichier XLA avec une extension XLS,
aprés activation du xls il faut cocher la macro complémentaire: Call Tree
97
petit souci également d'affichage de l'arboresence si la police MS
LineDraw
n'est pas disponible...
"Jac" <jsanssp@mfra.net> a écrit dans le message de news:
OmDhMOlvHHA.3508@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom du
module + nom des macros) afin de pouvoir un peu mieux naviguer dans tout
ce
que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
la macro de Stephen Bullen (XL97) qui crée
l'arborescense et l'interdépendance des macros d'un classeur
sous forme pseudo graphique avec les notions de parent/enfant ainsi que
d'autres détailles tels que nombre d'appels, tailles etc...
cf ../..
· A straight list of parent/child procedures, useful for checking
the detail
· A summary pivot table of inter-module and intra-module calls, so
you can see at a glance which modules are closely coupled
· A pivot table with the parent procedure names in a page field,
so
you can easily identify which child procedures it calls
· A pivot table with the child procedure names in a page field, so
you can easily identify the procedures that call it
· A complete list of all the procedure calls, shown in a list
structure, enabling you to trace through the procedure flow
../..
http://www.oaltd.co.uk/DLCount/DLCount.asp?fileÊllTree.zip
NB:
petits problemes connus :
c'est en fait un fichier XLA avec une extension XLS,
aprés activation du xls il faut cocher la macro complémentaire: Call Tree
97
petit souci également d'affichage de l'arboresence si la police MS
LineDraw
n'est pas disponible...
"Jac" a écrit dans le message de news:
Bonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom du
module + nom des macros) afin de pouvoir un peu mieux naviguer dans tout
ce
que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
juste pour le reste..
...le raccourci clavier, c'est contraire à mes pratiques
mais si tu es prêt à te priver de ceux qui existent pour des commandes
d'excel en y associant CTrl+ une lettre
dans outils macros
sélectionne la macro puis clique sur options.
un bouton outil ou commande de menu serait amha plus approprié.
AmiCordialement.
lStephBonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeur
qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci
clavier
dans le classeur actif. Est-ce possible ?
"LSteph" a écrit dans le message de news:
%Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lStephBonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom
du module + nom des macros) afin de pouvoir un peu mieux naviguer dans
tout ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
juste pour le reste..
...le raccourci clavier, c'est contraire à mes pratiques
mais si tu es prêt à te priver de ceux qui existent pour des commandes
d'excel en y associant CTrl+ une lettre
dans outils macros
sélectionne la macro puis clique sur options.
un bouton outil ou commande de menu serait amha plus approprié.
AmiCordialement.
lSteph
Bonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeur
qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci
clavier
dans le classeur actif. Est-ce possible ?
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
%23NQRaCnvHHA.2040@TK2MSFTNGP03.phx.gbl...
Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lSteph
Bonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom
du module + nom des macros) afin de pouvoir un peu mieux naviguer dans
tout ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
juste pour le reste..
...le raccourci clavier, c'est contraire à mes pratiques
mais si tu es prêt à te priver de ceux qui existent pour des commandes
d'excel en y associant CTrl+ une lettre
dans outils macros
sélectionne la macro puis clique sur options.
un bouton outil ou commande de menu serait amha plus approprié.
AmiCordialement.
lStephBonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeur
qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci
clavier
dans le classeur actif. Est-ce possible ?
"LSteph" a écrit dans le message de news:
%Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lStephBonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom
du module + nom des macros) afin de pouvoir un peu mieux naviguer dans
tout ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
Une macro de Laurent
Mais qui ne donne pas le nom du module
voir peut-etre alors là :
Une macro de Laurent
Mais qui ne donne pas le nom du module
voir peut-etre alors là :
Une macro de Laurent
Mais qui ne donne pas le nom du module
voir peut-etre alors là :
oui donc:
Sub RapportProj()
Dim oMod As VBComponent, J As Integer
Dim myProc As String, myCell As Range
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ActiveWorkbook.VBProject.VBComponents
With oMod.CodeModule
For J = 1 To .CountOfLines
If Len(.Lines(J, 1)) > 1 And _
.ProcOfLine(J, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(J, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(J, 1)
End If
Next J
End With
Next
End SubBonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeur
qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci
clavier
dans le classeur actif. Est-ce possible ?
"LSteph" a écrit dans le message de news:
%Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lStephBonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom
du module + nom des macros) afin de pouvoir un peu mieux naviguer dans
tout ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
oui donc:
Sub RapportProj()
Dim oMod As VBComponent, J As Integer
Dim myProc As String, myCell As Range
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ActiveWorkbook.VBProject.VBComponents
With oMod.CodeModule
For J = 1 To .CountOfLines
If Len(.Lines(J, 1)) > 1 And _
.ProcOfLine(J, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(J, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(J, 1)
End If
Next J
End With
Next
End Sub
Bonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeur
qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci
clavier
dans le classeur actif. Est-ce possible ?
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
%23NQRaCnvHHA.2040@TK2MSFTNGP03.phx.gbl...
Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lSteph
Bonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom
du module + nom des macros) afin de pouvoir un peu mieux naviguer dans
tout ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
oui donc:
Sub RapportProj()
Dim oMod As VBComponent, J As Integer
Dim myProc As String, myCell As Range
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ActiveWorkbook.VBProject.VBComponents
With oMod.CodeModule
For J = 1 To .CountOfLines
If Len(.Lines(J, 1)) > 1 And _
.ProcOfLine(J, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(J, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(J, 1)
End If
Next J
End With
Next
End SubBonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeur
qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci
clavier
dans le classeur actif. Est-ce possible ?
"LSteph" a écrit dans le message de news:
%Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lStephBonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom
du module + nom des macros) afin de pouvoir un peu mieux naviguer dans
tout ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
Bonsour® Daniel.j avec ferveur ;o))) vous nous disiez :Une macro de Laurent
Mais qui ne donne pas le nom du module
voir peut-etre alors là :
http://xcell05.free.fr/pages/telecharge/index.html#Listeprocs
http://xcell05.free.fr/downloads/Listeprocs.zip
--
@+
;o)))
Bonsour® Daniel.j avec ferveur ;o))) vous nous disiez :
Une macro de Laurent
Mais qui ne donne pas le nom du module
voir peut-etre alors là :
http://xcell05.free.fr/pages/telecharge/index.html#Listeprocs
http://xcell05.free.fr/downloads/Listeprocs.zip
--
@+
;o)))
Bonsour® Daniel.j avec ferveur ;o))) vous nous disiez :Une macro de Laurent
Mais qui ne donne pas le nom du module
voir peut-etre alors là :
http://xcell05.free.fr/pages/telecharge/index.html#Listeprocs
http://xcell05.free.fr/downloads/Listeprocs.zip
--
@+
;o)))
oui donc:
Sub RapportProj()
Dim oMod As VBComponent, J As Integer
Dim myProc As String, myCell As Range
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ActiveWorkbook.VBProject.VBComponents
With oMod.CodeModule
For J = 1 To .CountOfLines
If Len(.Lines(J, 1)) > 1 And _
.ProcOfLine(J, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(J, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(J, 1)
End If
Next J
End With
Next
End SubBonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeu r qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci clavier
dans le classeur actif. Est-ce possible ?
"LSteph" a écrit dans le message de news:
%Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lStephBonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom du
module + nom des macros) afin de pouvoir un peu mieux naviguer dans t out
ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
oui donc:
Sub RapportProj()
Dim oMod As VBComponent, J As Integer
Dim myProc As String, myCell As Range
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ActiveWorkbook.VBProject.VBComponents
With oMod.CodeModule
For J = 1 To .CountOfLines
If Len(.Lines(J, 1)) > 1 And _
.ProcOfLine(J, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(J, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(J, 1)
End If
Next J
End With
Next
End Sub
Bonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeu r qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci clavier
dans le classeur actif. Est-ce possible ?
"LSteph" <lecocost...@frite.fr> a écrit dans le message de news:
%23NQRaCnvHHA.2...@TK2MSFTNGP03.phx.gbl...
Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lSteph
Bonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom du
module + nom des macros) afin de pouvoir un peu mieux naviguer dans t out
ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac
oui donc:
Sub RapportProj()
Dim oMod As VBComponent, J As Integer
Dim myProc As String, myCell As Range
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ActiveWorkbook.VBProject.VBComponents
With oMod.CodeModule
For J = 1 To .CountOfLines
If Len(.Lines(J, 1)) > 1 And _
.ProcOfLine(J, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(J, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(J, 1)
End If
Next J
End With
Next
End SubBonsoir Steph,
merci de t'être penché sur ma requête.
Mon seul problème reste le suivant : cette macro agit dans le classeu r qui
la contient et moi, j'aurais aimé pouvoir mettre cette macro dans un
classeur invisible et générer la liste des macros avec un raccourci clavier
dans le classeur actif. Est-ce possible ?
"LSteph" a écrit dans le message de news:
%Bonsoir Jac,
Sub RapportProj()
Dim oMod As VBComponent, i As Long, j As Integer
Dim myProc As String, myCell As Range
i = 1
Application.ScreenUpdating = False
Worksheets.Add
With ActiveSheet
.Name = "Rapport projet " & Format(Now, "ddmmyyyy_hhnnss")
.Cells(1) = "Nom de module"
.Cells(2) = "Procèdures"
.Cells(3) = "Détail ligne"
End With
For Each oMod In ThisWorkbook.VBProject.VBComponents
i = i + 1
With oMod.CodeModule
For j = 1 To .CountOfLines
If Len(.Lines(j, 1)) > 1 And _
.ProcOfLine(j, vbext_pk_Proc) <> myProc Then
myProc = .ProcOfLine(j, vbext_pk_Proc)
Set myCell = [a65536].End(xlUp)(2)
myCell = oMod.Name
myCell.Offset(0, 1) = myProc
myCell.Offset(0, 2) = .Lines(j, 1)
End If
Next j
End With
Next
End Sub
'Cordialement
'lStephBonjour à tous,
j'aimerais pourvoir générer dans une feuille, la liste des macros (nom du
module + nom des macros) afin de pouvoir un peu mieux naviguer dans t out
ce que j'ai mis dans mon projet.
Merci d'avance à qui me mettra sur la voie.
Jac