OVH Cloud OVH Cloud

Documentation technique VBA

25 réponses
Avatar
Pounet95
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche un moyen
de faire de façon fiable et rapide une documentation technique.
J'entend par là, écrire un document qui détaillerait le code ( même s'il y a
des commentaires dedans ) tant sur son pourquoi que comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un outil qui
permettrait de lister l'ensemble des objets et d'en faire des stats, ce
serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de procédures (ou
fonctions ), le nombre de lignes de code, le nombre de feuilles avec code
dans procédures évènementielles, puis pour chaque userform le type et le
nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis , juré, je
crois à nouveau en toi ( ou toit ! )

Pounet95

10 réponses

1 2 3
Avatar
Pounet95
Bonjour,

Effectivement c'est puissant et très rapide. Je suis surpris en lisant les
stats de voir le nombre de lignes générées pour un projet ( compris le
nombre de commentaires avec pourcentage de celui-ci par rapport au total ).
L'aide est en anglais, que je ne maitrise pas du tout, mais j'ai réussi à
comprendre où c'était installé. Il y a encore du boulot derrière le XML
généré, mais ça enlève déjà une grosse épine du pied.

Merci
Bonne journée neigeuse ????
Pounet95


"FdeCourt" a écrit dans le message de
news:
Salut,
Il existe l'outil MZTools qui te permet, en autre, de générer un
documents XML que tu n'a plus qu'a compléter.

http://www.mztools.com/

Cordialement,
F.
Avatar
fetnat
Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et coché
côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé et
finalement ça marche comme un charme, dans un classeur qui possède du
code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car il
n'y arrivait pas...Puis les vapeurs se sont évaporées et le miracle advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela se
trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou mieux
pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines , j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code ( même
s'il y a des commentaires dedans ) tant sur son pourquoi que comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat
Avatar
Pounet95
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans Excel ET dans
Word. Correction faite sauf que je ne sais pas comment m'y prendre pour
enregistrer ces références dans Word et Excel afin qu'elles soient
disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et coché
côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé et
finalement ça marche comme un charme, dans un classeur qui possède du
code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car il n'y
arrivait pas...Puis les vapeurs se sont évaporées et le miracle advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela se
trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou mieux
pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines , j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code ( même
s'il y a des commentaires dedans ) tant sur son pourquoi que comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat


Avatar
isabelle
bonjour Pounet et à toute l'assemblé,

je n'ai pas réussi non plus à la faire fonctionner, j'ai un message
d'erreur (erreur de compilation) sur Dim VBC As VBComponent,
les deux références sont bien cochées

isabelle
ps/ y a t'il une différence entre "Microsoft Visual Basic For
Applications Extensibility" et "Visual Basic For Applications
Extensibility" ?

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans Excel
ET dans Word. Correction faite sauf que je ne sais pas comment m'y
prendre pour enregistrer ces références dans Word et Excel afin
qu'elles soient disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et
coché côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé
et finalement ça marche comme un charme, dans un classeur qui possède
du code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car
il n'y arrivait pas...Puis les vapeurs se sont évaporées et le
miracle advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela
se trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou
mieux pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines , j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets
et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence
à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code ( même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat





Avatar
isabelle
oups correction,

il y a bien une différence entre
"Microsoft Visual Basic For Applications Extensibility"
et
"Visual Basic For Applications"

et nul besoin d'ajouter de référence dans Word.

et comme a dit Fetna, c'est d'enfer Monseigneur, ça vaut bien milles bisou*s
et de très joyeuse fêtes à tous,

isabelle

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans Excel
ET dans Word. Correction faite sauf que je ne sais pas comment m'y
prendre pour enregistrer ces références dans Word et Excel afin
qu'elles soient disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et
coché côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé
et finalement ça marche comme un charme, dans un classeur qui possède
du code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car
il n'y arrivait pas...Puis les vapeurs se sont évaporées et le
miracle advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela
se trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou
mieux pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines , j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets
et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence
à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code ( même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat





Avatar
Pounet95
Bonsoir Isabelle,

As-tu réussi à sauvegarder pour TOUT document que tu créeras ou aloes ça
fonctionne juste pour le classeur en cours ?
Je dois être super "lourdingue" car jusqu'à maintenant, je n'ai toujours pas
réussi à faire fonctionner la procédure, mais c'est sous Vista/2007 !!!!

Pounet95

"isabelle" a écrit dans le message de
news:
oups correction,

il y a bien une différence entre
"Microsoft Visual Basic For Applications Extensibility"
et
"Visual Basic For Applications"

et nul besoin d'ajouter de référence dans Word.

et comme a dit Fetna, c'est d'enfer Monseigneur, ça vaut bien milles
bisou*s
et de très joyeuse fêtes à tous,

isabelle

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans Excel ET
dans Word. Correction faite sauf que je ne sais pas comment m'y prendre
pour enregistrer ces références dans Word et Excel afin qu'elles soient
disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et coché
côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé et
finalement ça marche comme un charme, dans un classeur qui possède du
code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car il
n'y arrivait pas...Puis les vapeurs se sont évaporées et le miracle
advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela se
trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou mieux
pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines , j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets et
3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence à
la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code ( même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat







Avatar
Mgr T. Banni
bonsoir pounet
moi, j'ai dit que je n'avais pas XL 2007 et que ça marchait comme un lapide
(vous savez, ce tlain qui va tlès tlès vite) sur XL 2002 et 2003
AMHA, ça ne fonctionne que pour les classeurs dont les références
sous-nommées ont été cochées dans XL où, là encore AMHA, c'est suffisant
(rien à faire dans Word, donc)
si seulement notre grand chef 4 plumes venait mettre son grain de sel à
cette occasion, nous serions fixés mais le félon a d'autres gones en ligne
de mire
Mgr T.B.


"Pounet95" a écrit dans le message de groupe de
discussion :
Bonsoir Isabelle,

As-tu réussi à sauvegarder pour TOUT document que tu créeras ou aloes ça
fonctionne juste pour le classeur en cours ?
Je dois être super "lourdingue" car jusqu'à maintenant, je n'ai toujours
pas réussi à faire fonctionner la procédure, mais c'est sous Vista/2007
!!!!

Pounet95

"isabelle" a écrit dans le message de
news:
oups correction,

il y a bien une différence entre
"Microsoft Visual Basic For Applications Extensibility"
et
"Visual Basic For Applications"

et nul besoin d'ajouter de référence dans Word.

et comme a dit Fetna, c'est d'enfer Monseigneur, ça vaut bien milles
bisou*s
et de très joyeuse fêtes à tous,

isabelle

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans Excel ET
dans Word. Correction faite sauf que je ne sais pas comment m'y prendre
pour enregistrer ces références dans Word et Excel afin qu'elles soient
disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et coché
côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé et
finalement ça marche comme un charme, dans un classeur qui possède du
code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car il
n'y arrivait pas...Puis les vapeurs se sont évaporées et le miracle
advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela se
trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou mieux
pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines , j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être
rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets et
3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros
donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence à
la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et
raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code (
même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un
outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat










Avatar
Pounet95
Bonjour Mgr,

Oui, j'avais bien lu la non mise à dispo d'Office2007 !
Je ne sais pas avec quelle version Isabelle, et FetNat ont réussi à faire
fonctionner la procédure, mais je les envie ( même si c'est un des 7 pêchés
capitaux )
Je tente de décortiquer la procédure ligne par ligne et je coince dès le
début

Même ça coince alors que ce ne sont que des copier/coller de l'aide !!

Sub test()
Debug.Print Application.VBE.ActiveVBProject.Name
Debug.Print ThisWorkbook.VBProject.Name
End Sub

Dès ma première ligne, j'ai le message d'erreur : "La méthode VBE de l'objet
Application a échoué "
Manquerait-il une référence quelque part ? Je ne comprends rien à ce qui
s'appelle "Aide" ;o((((
Les références cochées :
Visual Basic pour Applications
Microsoft Excel 12
OLE Automation
Microsoft ActiveX Data Object 2.5 Library
Microsoft Forms 2.0 Object library
Microsoft Visual Basic For Application Extensibility 5.3
VBAProject

Si ça inspire quelqu'un(e) ???

Pounet95


"Mgr T. Banni" a écrit dans le message de
news:
bonsoir pounet
moi, j'ai dit que je n'avais pas XL 2007 et que ça marchait comme un
lapide (vous savez, ce tlain qui va tlès tlès vite) sur XL 2002 et 2003
AMHA, ça ne fonctionne que pour les classeurs dont les références
sous-nommées ont été cochées dans XL où, là encore AMHA, c'est suffisant
(rien à faire dans Word, donc)
si seulement notre grand chef 4 plumes venait mettre son grain de sel à
cette occasion, nous serions fixés mais le félon a d'autres gones en ligne
de mire
Mgr T.B.


"Pounet95" a écrit dans le message de groupe de
discussion :
Bonsoir Isabelle,

As-tu réussi à sauvegarder pour TOUT document que tu créeras ou aloes ça
fonctionne juste pour le classeur en cours ?
Je dois être super "lourdingue" car jusqu'à maintenant, je n'ai toujours
pas réussi à faire fonctionner la procédure, mais c'est sous Vista/2007
!!!!

Pounet95

"isabelle" a écrit dans le message de
news:
oups correction,

il y a bien une différence entre
"Microsoft Visual Basic For Applications Extensibility"
et
"Visual Basic For Applications"

et nul besoin d'ajouter de référence dans Word.

et comme a dit Fetna, c'est d'enfer Monseigneur, ça vaut bien milles
bisou*s
et de très joyeuse fêtes à tous,

isabelle

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans Excel ET
dans Word. Correction faite sauf que je ne sais pas comment m'y prendre
pour enregistrer ces références dans Word et Excel afin qu'elles soient
disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et
coché côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé, sauvé
et finalement ça marche comme un charme, dans un classeur qui possède
du code, bien sûr ! Dans mon test c'est 23 pages de code bien rangé.
Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère car il
n'y arrivait pas...Puis les vapeurs se sont évaporées et le miracle
advint.
On se demande bien quel fut son parcours à cette bleusaille, si cela
se trouve il est monté dans la hiérarchie. Tu l'imagines, évêque ou
mieux pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines ,
j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être
rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10 navets
et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros
donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une référence
à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de
news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et
raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code (
même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un
outil
qui permettrait de lister l'ensemble des objets et d'en faire des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module, procédure
par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le
nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte, promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat












Avatar
fetnat
Pounet,

J'ai off2003.

Le message "La méthode VBE de l'objet Application a échoué " a disparu
quand j'ai coché
Microsoft Visual Basic For Application Extensibility 5.3

Après j'ai été confus car j'ai tout tripoté côté Word et XL et c'est
parti...

J'ai refait la manip ce matin et ça tourne comme une horloge suisse.

fetnat



Le 18/12/2009 08:07, Pounet95 a écrit :
Bonjour Mgr,

Oui, j'avais bien lu la non mise à dispo d'Office2007 !
Je ne sais pas avec quelle version Isabelle, et FetNat ont réussi à
faire fonctionner la procédure, mais je les envie ( même si c'est un des
7 pêchés capitaux )
Je tente de décortiquer la procédure ligne par ligne et je coince dès le
début

Même ça coince alors que ce ne sont que des copier/coller de l'aide !!

Sub test()
Debug.Print Application.VBE.ActiveVBProject.Name
Debug.Print ThisWorkbook.VBProject.Name
End Sub

Dès ma première ligne, j'ai le message d'erreur : "La méthode VBE de
l'objet Application a échoué "
Manquerait-il une référence quelque part ? Je ne comprends rien à ce qui
s'appelle "Aide" ;o((((
Les références cochées :
Visual Basic pour Applications
Microsoft Excel 12
OLE Automation
Microsoft ActiveX Data Object 2.5 Library
Microsoft Forms 2.0 Object library
Microsoft Visual Basic For Application Extensibility 5.3
VBAProject

Si ça inspire quelqu'un(e) ???

Pounet95


"Mgr T. Banni" a écrit dans le message de
news:
bonsoir pounet
moi, j'ai dit que je n'avais pas XL 2007 et que ça marchait comme un
lapide (vous savez, ce tlain qui va tlès tlès vite) sur XL 2002 et 2003
AMHA, ça ne fonctionne que pour les classeurs dont les références
sous-nommées ont été cochées dans XL où, là encore AMHA, c'est
suffisant (rien à faire dans Word, donc)
si seulement notre grand chef 4 plumes venait mettre son grain de sel
à cette occasion, nous serions fixés mais le félon a d'autres gones en
ligne de mire
Mgr T.B.


"Pounet95" a écrit dans le message de groupe
de discussion :
Bonsoir Isabelle,

As-tu réussi à sauvegarder pour TOUT document que tu créeras ou aloes
ça fonctionne juste pour le classeur en cours ?
Je dois être super "lourdingue" car jusqu'à maintenant, je n'ai
toujours pas réussi à faire fonctionner la procédure, mais c'est sous
Vista/2007 !!!!

Pounet95

"isabelle" a écrit dans le message de
news:
oups correction,

il y a bien une différence entre
"Microsoft Visual Basic For Applications Extensibility"
et
"Visual Basic For Applications"

et nul besoin d'ajouter de référence dans Word.

et comme a dit Fetna, c'est d'enfer Monseigneur, ça vaut bien milles
bisou*s
et de très joyeuse fêtes à tous,

isabelle

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans
Excel ET dans Word. Correction faite sauf que je ne sais pas
comment m'y prendre pour enregistrer ces références dans Word et
Excel afin qu'elles soient disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et
coché côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé,
sauvé et finalement ça marche comme un charme, dans un classeur
qui possède du code, bien sûr ! Dans mon test c'est 23 pages de
code bien rangé. Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère
car il n'y arrivait pas...Puis les vapeurs se sont évaporées et le
miracle advint.
On se demande bien quel fut son parcours à cette bleusaille, si
cela se trouve il est monté dans la hiérarchie. Tu l'imagines,
évêque ou mieux pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines ,
j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur
Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être
rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10
navets et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros
donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une
référence à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object
Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For
Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de
news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et
raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" & Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je
cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code
( même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un
outil
qui permettrait de lister l'ensemble des objets et d'en faire
des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module,
procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le
nombre
de feuilles avec code dans procédures évènementielles, puis pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte,
promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat

















--
fetnat
Avatar
Pounet95
Bonjour fetnat,
Qu'as-tu comme références cochées ?

Pounet95

"fetnat" a écrit dans le message de
news:

Pounet,

J'ai off2003.

Le message "La méthode VBE de l'objet Application a échoué " a disparu
quand j'ai coché
Microsoft Visual Basic For Application Extensibility 5.3

Après j'ai été confus car j'ai tout tripoté côté Word et XL et c'est
parti...

J'ai refait la manip ce matin et ça tourne comme une horloge suisse.

fetnat



Le 18/12/2009 08:07, Pounet95 a écrit :
Bonjour Mgr,

Oui, j'avais bien lu la non mise à dispo d'Office2007 !
Je ne sais pas avec quelle version Isabelle, et FetNat ont réussi à
faire fonctionner la procédure, mais je les envie ( même si c'est un des
7 pêchés capitaux )
Je tente de décortiquer la procédure ligne par ligne et je coince dès le
début

Même ça coince alors que ce ne sont que des copier/coller de l'aide !!

Sub test()
Debug.Print Application.VBE.ActiveVBProject.Name
Debug.Print ThisWorkbook.VBProject.Name
End Sub

Dès ma première ligne, j'ai le message d'erreur : "La méthode VBE de
l'objet Application a échoué "
Manquerait-il une référence quelque part ? Je ne comprends rien à ce qui
s'appelle "Aide" ;o((((
Les références cochées :
Visual Basic pour Applications
Microsoft Excel 12
OLE Automation
Microsoft ActiveX Data Object 2.5 Library
Microsoft Forms 2.0 Object library
Microsoft Visual Basic For Application Extensibility 5.3
VBAProject

Si ça inspire quelqu'un(e) ???

Pounet95


"Mgr T. Banni" a écrit dans le message de
news:
bonsoir pounet
moi, j'ai dit que je n'avais pas XL 2007 et que ça marchait comme un
lapide (vous savez, ce tlain qui va tlès tlès vite) sur XL 2002 et 2003
AMHA, ça ne fonctionne que pour les classeurs dont les références
sous-nommées ont été cochées dans XL où, là encore AMHA, c'est
suffisant (rien à faire dans Word, donc)
si seulement notre grand chef 4 plumes venait mettre son grain de sel
à cette occasion, nous serions fixés mais le félon a d'autres gones en
ligne de mire
Mgr T.B.


"Pounet95" a écrit dans le message de groupe
de discussion :
Bonsoir Isabelle,

As-tu réussi à sauvegarder pour TOUT document que tu créeras ou aloes
ça fonctionne juste pour le classeur en cours ?
Je dois être super "lourdingue" car jusqu'à maintenant, je n'ai
toujours pas réussi à faire fonctionner la procédure, mais c'est sous
Vista/2007 !!!!

Pounet95

"isabelle" a écrit dans le message de
news:
oups correction,

il y a bien une différence entre
"Microsoft Visual Basic For Applications Extensibility"
et
"Visual Basic For Applications"

et nul besoin d'ajouter de référence dans Word.

et comme a dit Fetna, c'est d'enfer Monseigneur, ça vaut bien milles
bisou*s
et de très joyeuse fêtes à tous,

isabelle

Pounet95 a écrit :
Bonjour,

Bon, sur le coup, j'ai toujours un souci.
Je n'avais pas compris qu'il faille mettre les références dans
Excel ET dans Word. Correction faite sauf que je ne sais pas
comment m'y prendre pour enregistrer ces références dans Word et
Excel afin qu'elles soient disponibles compris dans un nouvel objet.
Comment dois-je procéder Vista/Office2007 ?

Merci
Pounet95

"fetnat" a écrit dans le message de
news:


Bonjour,

Ce n'est pas parti du premier coup, j'avais suivi l'ordonnance et
coché côté XL et Word (les deux).
"Microsoft Word X.0 Object Library"
ainsi que la bibliothèque "Microsoft Visual Basic For Applications
Extensibility "."

Mais en vérifiant la coche est partie. J'ai recommencé, fermé,
sauvé et finalement ça marche comme un charme, dans un classeur
qui possède du code, bien sûr ! Dans mon test c'est 23 pages de
code bien rangé. Impressionnant.

J'ai même googlé dans les archives qui ont montrées qu'en 2001, un
paroissien à la main tremblante nommé Sabatier appelait sa mère
car il n'y arrivait pas...Puis les vapeurs se sont évaporées et le
miracle advint.
On se demande bien quel fut son parcours à cette bleusaille, si
cela se trouve il est monté dans la hiérarchie. Tu l'imagines,
évêque ou mieux pape ?! :)

cordialement

fetnat





Le 17/12/2009 07:03, Pounet95 a écrit :
Bonjour Mgr ............ et tout le monde bien sûr,

Vista/Excel 2007

S'il vous reste quelques forces après avoir sonné matines ,
j'aimerais
savoir comment ça fonctionne car :
- j'ai copié la procédure dans un module standard d'un classeur
Excel
vierge,
- j'ai ajouté les références citées,
- j'ai ouvert un classeur dans lequel il y a 4 modules standards,,
- je me suis positionné dans la procédure et l'ai lancé pas à pas

résultat : la boucle 'For each VBC' n'est pas exécutée.

j'ai donc essayé en copiant la procédure dans un nouveau module
standard
du classeur vouly ( donc 5 modules maintenant )
re lancé la procédure, et même cause, même effet : rien, nada ;o(((

les modules sont ouverts, un document word est en attente d'être
rempli
mais c'est tout ce qui se passe de positif.

Dites-moi et je vous en serai très reconnaissant : don de 10
navets et 3
pommes de terre à Office ;o))))) ( c'est bof, mais perso, j'aime )

Pounet95



"Mgr T. Banni" a écrit dans le message de
news:
bonjour pounet
ne comprenant pas trop comment fonctionne la macro d'Alain Cros
donnée
ici par notre ange émettrice de bisou (las! au singulier!), je te
propose celle de notre cher disparu, Laurent Longre
la voici (non testée sur XL 2007 dont le Vatican ne nous a
toujours
pas équipé)
HTH
Mgr T. Banni

Sub CopieDansWord()
'Cette macro installe dans Word le détails de tous
'les modules ouverts du VBE
'Cette procédure suppose que tu ajoutes au projet VBA une
référence à la
'bibliothèque d'objets de Word ("Microsoft Word X.0 Object
Library")
'ainsi qu'à la bibliothèque "Microsoft Visual Basic For
Applications
'Extensibility "."
Dim VBC As VBComponent, W As Word.Application
Dim s As Word.Selection
On Error Resume Next
Set W = GetObject(Class:="Word.Application")
On Error GoTo 0
If W Is Nothing Then
Set W = New Word.Application
W.Visible = True
End If
W.ScreenUpdating = False
On Error GoTo fin
W.Activate
If W.Documents.Count = 0 Then W.Documents.Add
Set s = W.ActiveWindow.Selection
For Each VBC In ThisWorkbook.VBProject.VBComponents
With VBC.CodeModule
If .CountOfLines And .Name <> "CopieCodeVersWord" Then
s.InsertAfter vbCrLf _
& "==================================" & vbCrLf$ & _
"Nom du module : " & VBC.Name & vbCrLf$ _
& "==================================" & vbCrLf$ & _
vbCrLf$ & .Lines(1, .CountOfLines) & vbCrLf$
End If
End With
Next VBC
fin:
W.ScreenUpdating = True
End Sub
"Pounet95" a écrit dans le message de
news:
%
Merci beaucoup à tous deux

Je vais mettre ça en oeuvre rapidement
Merci aussi pour le "bisou*"

Bonnes fêtes de fin 2009 à toutes et tous
Pounet95


"isabelle" a écrit dans le message de
news:uA7s%
bonjour Pounet,

il y a celle-ci de Alain Cross pour listé tout les macro et
raccouci

Sub ListeMacros_2()
Dim Macro As String, Racc As String
Dim Rpt As String, I As Integer
Dim Wbk As Workbook

Application.ScreenUpdating = False
' Set Wbk = Workbooks.Add
ActiveWorkbook.ActiveSheet.[A1:B1] = [{"Procédure","Raccourci"}]
SendKeys "%{F8}%a{PGUP}{TAB}{ESC}", True

Do
Rpt = "%{F8}{TAB}" & Application.Rept("{DOWN}", I)
I = I + 1
SendKeys Rpt & "%n^c{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 1).Activate
ActiveSheet.Paste
Macro = ActiveCell.Value
If Macro = ActiveCell.Offset(-1).Value Then
ActiveCell.Clear
Exit Do
End If
SendKeys Rpt & "%t^c{ESC}{ESC}", True
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Activate
ActiveSheet.Paste
Racc = ActiveCell.Value
If Racc <> Macro Then
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Value = "Ctrl-" &
Racc
Else
ActiveWorkbook.ActiveSheet.Cells(I + 1, 2).Clear
End If

Loop

With Columns("A:B")
.AutoFit
.Sort [A1], Header:=xlYes
' .CurrentRegion.AutoFormat xlRangeAutoFormatColor2
End With
Application.ScreenUpdating = True
End Sub 'Alain Cross

je te souhaite de très joyeuses fêtes, bisou*
isabelle

Pounet95 a écrit :
Bonsoir à toutes et tous,
XL2000 et XL2007 sous Vista

Venant de mettre à disposition une application en VBA, je
cherche
un moyen de faire de façon fiable et rapide une documentation
technique.
J'entend par là, écrire un document qui détaillerait le code
( même
s'il y a des commentaires dedans ) tant sur son pourquoi que
comment.
Si dans un premier temps quelqu'un(e) avait des tuyaux sur un
outil
qui permettrait de lister l'ensemble des objets et d'en faire
des
stats, ce serait super.
Ainsi, je n'aurais pas à recopier module par module,
procédure par
procédure, l'ensemble du code et ensuite compter le nombre de
procédures (ou fonctions ), le nombre de lignes de code, le
nombre
de feuilles avec code dans procédures évènementielles, puis
pour
chaque userform le type et le nombre de contrôles utilisés.

Pére Noël ( ou Mère Noëlle ), si tu as ça dans ta hotte,
promis ,
juré, je crois à nouveau en toi ( ou toit ! )

Pounet95
















--
fetnat

















--
fetnat


1 2 3