Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :
http://groups.google.com/group/microsoft.public.fr.excel/browse_thread/thread/968abf07ba37fa1a/991acca49492b5ed?lnk=st&q=modules.count+group%3Amicrosoft.public.fr.excel&rnum=1&hl=fr#991acca49492b5ed
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :
http://groups.google.com/group/microsoft.public.fr.excel/browse_thread/thread/968abf07ba37fa1a/991acca49492b5ed?lnk=st&q=modules.count+group%3Amicrosoft.public.fr.excel&rnum=1&hl=fr#991acca49492b5ed
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :
http://groups.google.com/group/microsoft.public.fr.excel/browse_thread/thread/968abf07ba37fa1a/991acca49492b5ed?lnk=st&q=modules.count+group%3Amicrosoft.public.fr.excel&rnum=1&hl=fr#991acca49492b5ed
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
on cherche des heures et quand on poste, on trouve...
Sub CountModules()
x = ThisWorkbook.VBProject.VBComponents.Count
y = 0
For ctr = 1 To x
If ThisWorkbook.VBProject.VBComponents(ctr).Type = 1 Then
y = y + 1
End If
Next ctr
MsgBox "Module count is " & y
End Sub
fetnatBonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :
http://groups.google.com/group/microsoft.public.fr.excel/browse_thread/thread/968abf07ba37fa1a/991acca49492b5ed?lnk=st&q=modules.count+group%3Amicrosoft.public.fr.excel&rnum=1&hl=fr#991acca49492b5ed
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
on cherche des heures et quand on poste, on trouve...
Sub CountModules()
x = ThisWorkbook.VBProject.VBComponents.Count
y = 0
For ctr = 1 To x
If ThisWorkbook.VBProject.VBComponents(ctr).Type = 1 Then
y = y + 1
End If
Next ctr
MsgBox "Module count is " & y
End Sub
fetnat
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :
http://groups.google.com/group/microsoft.public.fr.excel/browse_thread/thread/968abf07ba37fa1a/991acca49492b5ed?lnk=st&q=modules.count+group%3Amicrosoft.public.fr.excel&rnum=1&hl=fr#991acca49492b5ed
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
on cherche des heures et quand on poste, on trouve...
Sub CountModules()
x = ThisWorkbook.VBProject.VBComponents.Count
y = 0
For ctr = 1 To x
If ThisWorkbook.VBProject.VBComponents(ctr).Type = 1 Then
y = y + 1
End If
Next ctr
MsgBox "Module count is " & y
End Sub
fetnatBonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :
http://groups.google.com/group/microsoft.public.fr.excel/browse_thread/thread/968abf07ba37fa1a/991acca49492b5ed?lnk=st&q=modules.count+group%3Amicrosoft.public.fr.excel&rnum=1&hl=fr#991acca49492b5ed
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :http://groups.google.com/group/mic rosoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :http://groups.google.com/group/mic rosoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :http://groups.google.com/group/mic rosoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour, fetnat
Dans ce cas, j'ai plus court et plus rapide en exécution:
Sub CountModules()
y = 0
For Each x In ThisWorkbook.VBProject.VBComponents
If x.Type = 1 Then
y = y + 1
End If
Next x
MsgBox "Module count is " & y
End Sub
Mais ta solution fonctionne aussi bien (et, à moins d'avoir des milliards de
modules...)
Bonjour, fetnat
Dans ce cas, j'ai plus court et plus rapide en exécution:
Sub CountModules()
y = 0
For Each x In ThisWorkbook.VBProject.VBComponents
If x.Type = 1 Then
y = y + 1
End If
Next x
MsgBox "Module count is " & y
End Sub
Mais ta solution fonctionne aussi bien (et, à moins d'avoir des milliards de
modules...)
Bonjour, fetnat
Dans ce cas, j'ai plus court et plus rapide en exécution:
Sub CountModules()
y = 0
For Each x In ThisWorkbook.VBProject.VBComponents
If x.Type = 1 Then
y = y + 1
End If
Next x
MsgBox "Module count is " & y
End Sub
Mais ta solution fonctionne aussi bien (et, à moins d'avoir des milliards de
modules...)
Bonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat <fet...@caramail.com> wrote:
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Bonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici :http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnatBonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnat
Bonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat <fet...@caramail.com> wrote:
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnatBonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
onctionne aussi et que j'aime bien les "Select Case"...
''''''''''''''''''''''''''''''''''''
' cocher la référence à "Microsoft Visual Basic For Applications
que j'avais oublié de préciser.
Bonjour à tous.
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
LSteph, Ok pour la fonction générique mais, dans ta sub, il y a quand même 4
appels à un parcours complet des modules. On peut gérer cela avec un seul
parcours et un select case:
' cocher la référence à "Microsoft Visual Basic For Applications
Extensibility"
Sub testM()
Dim vBc As VBComponent
Dim nbClassModule As Byte
Dim nbMSForm As Byte
Dim nbStdModule As Byte
Dim nbDocument As Byte
Dim mess As String
For Each vBc In ThisWorkbook.VBProject.VBComponents
Select Case vBc.Type
Case vbext_ct_ClassModule:
nbClassModule = nbClassModule + 1
Case vbext_ct_MSForm:
nbMSForm = nbMSForm + 1
Case vbext_ct_StdModule:
nbStdModule = nbStdModule + 1
Case vbext_ct_Document:
nbDocument = nbDocument + 1
Case Else:
' non comptabilisé
End Select
Next
mess = nbClassModule & " Module de classe" & vbCrLf & _
nbMSForm & " Feuille Microsoft" & vbCrLf & _
nbStdModule & " Module standard" & vbCrLf & _
nbDocument & " Module de document"
MsgBox mess
End Sub
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initia le
fonctionne aussi et que j'aime bien les "Select Case"...
J'espère avoir fait avancer le schmilblick ;-)
--
Bonne continuation
------------------------------------------------------------------------- ------------------Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnatBonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'ar rive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_thre a...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
onctionne aussi et que j'aime bien les "Select Case"...
''''''''''''''''''''''''''''''''''''
' cocher la référence à "Microsoft Visual Basic For Applications
que j'avais oublié de préciser.
Bonjour à tous.
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
LSteph, Ok pour la fonction générique mais, dans ta sub, il y a quand même 4
appels à un parcours complet des modules. On peut gérer cela avec un seul
parcours et un select case:
' cocher la référence à "Microsoft Visual Basic For Applications
Extensibility"
Sub testM()
Dim vBc As VBComponent
Dim nbClassModule As Byte
Dim nbMSForm As Byte
Dim nbStdModule As Byte
Dim nbDocument As Byte
Dim mess As String
For Each vBc In ThisWorkbook.VBProject.VBComponents
Select Case vBc.Type
Case vbext_ct_ClassModule:
nbClassModule = nbClassModule + 1
Case vbext_ct_MSForm:
nbMSForm = nbMSForm + 1
Case vbext_ct_StdModule:
nbStdModule = nbStdModule + 1
Case vbext_ct_Document:
nbDocument = nbDocument + 1
Case Else:
' non comptabilisé
End Select
Next
mess = nbClassModule & " Module de classe" & vbCrLf & _
nbMSForm & " Feuille Microsoft" & vbCrLf & _
nbStdModule & " Module standard" & vbCrLf & _
nbDocument & " Module de document"
MsgBox mess
End Sub
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initia le
fonctionne aussi et que j'aime bien les "Select Case"...
J'espère avoir fait avancer le schmilblick ;-)
--
Bonne continuation
------------------------------------------------------------------------- ------------------
Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnat
Bonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat <fet...@caramail.com> wrote:
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'ar rive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_thre a...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
onctionne aussi et que j'aime bien les "Select Case"...
''''''''''''''''''''''''''''''''''''
' cocher la référence à "Microsoft Visual Basic For Applications
que j'avais oublié de préciser.
Bonjour à tous.
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
LSteph, Ok pour la fonction générique mais, dans ta sub, il y a quand même 4
appels à un parcours complet des modules. On peut gérer cela avec un seul
parcours et un select case:
' cocher la référence à "Microsoft Visual Basic For Applications
Extensibility"
Sub testM()
Dim vBc As VBComponent
Dim nbClassModule As Byte
Dim nbMSForm As Byte
Dim nbStdModule As Byte
Dim nbDocument As Byte
Dim mess As String
For Each vBc In ThisWorkbook.VBProject.VBComponents
Select Case vBc.Type
Case vbext_ct_ClassModule:
nbClassModule = nbClassModule + 1
Case vbext_ct_MSForm:
nbMSForm = nbMSForm + 1
Case vbext_ct_StdModule:
nbStdModule = nbStdModule + 1
Case vbext_ct_Document:
nbDocument = nbDocument + 1
Case Else:
' non comptabilisé
End Select
Next
mess = nbClassModule & " Module de classe" & vbCrLf & _
nbMSForm & " Feuille Microsoft" & vbCrLf & _
nbStdModule & " Module standard" & vbCrLf & _
nbDocument & " Module de document"
MsgBox mess
End Sub
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initia le
fonctionne aussi et que j'aime bien les "Select Case"...
J'espère avoir fait avancer le schmilblick ;-)
--
Bonne continuation
------------------------------------------------------------------------- ------------------Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnatBonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je n'ar rive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_thre a...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
onctionne aussi et que j'aime bien les "Select Case"...
''''''''''''''''''''''''''''''''''''
' cocher la référence à "Microsoft Visual Basic For Applications
que j'avais oublié de préciser.
Bonjour à tous.
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
LSteph, Ok pour la fonction générique mais, dans ta sub, il y a quand même
4
appels à un parcours complet des modules. On peut gérer cela avec un seul
parcours et un select case:
' cocher la référence à "Microsoft Visual Basic For Applications
Extensibility"
Sub testM()
Dim vBc As VBComponent
Dim nbClassModule As Byte
Dim nbMSForm As Byte
Dim nbStdModule As Byte
Dim nbDocument As Byte
Dim mess As String
For Each vBc In ThisWorkbook.VBProject.VBComponents
Select Case vBc.Type
Case vbext_ct_ClassModule:
nbClassModule = nbClassModule + 1
Case vbext_ct_MSForm:
nbMSForm = nbMSForm + 1
Case vbext_ct_StdModule:
nbStdModule = nbStdModule + 1
Case vbext_ct_Document:
nbDocument = nbDocument + 1
Case Else:
' non comptabilisé
End Select
Next
mess = nbClassModule & " Module de classe" & vbCrLf & _
nbMSForm & " Feuille Microsoft" & vbCrLf & _
nbStdModule & " Module standard" & vbCrLf & _
nbDocument & " Module de document"
MsgBox mess
End Sub
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
fonctionne aussi et que j'aime bien les "Select Case"...
J'espère avoir fait avancer le schmilblick ;-)
--
Bonne continuation
-------------------------------------------------------------------------------------------Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnatBonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je
n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
onctionne aussi et que j'aime bien les "Select Case"...
''''''''''''''''''''''''''''''''''''
' cocher la référence à "Microsoft Visual Basic For Applications
que j'avais oublié de préciser.
Bonjour à tous.
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
LSteph, Ok pour la fonction générique mais, dans ta sub, il y a quand même
4
appels à un parcours complet des modules. On peut gérer cela avec un seul
parcours et un select case:
' cocher la référence à "Microsoft Visual Basic For Applications
Extensibility"
Sub testM()
Dim vBc As VBComponent
Dim nbClassModule As Byte
Dim nbMSForm As Byte
Dim nbStdModule As Byte
Dim nbDocument As Byte
Dim mess As String
For Each vBc In ThisWorkbook.VBProject.VBComponents
Select Case vBc.Type
Case vbext_ct_ClassModule:
nbClassModule = nbClassModule + 1
Case vbext_ct_MSForm:
nbMSForm = nbMSForm + 1
Case vbext_ct_StdModule:
nbStdModule = nbStdModule + 1
Case vbext_ct_Document:
nbDocument = nbDocument + 1
Case Else:
' non comptabilisé
End Select
Next
mess = nbClassModule & " Module de classe" & vbCrLf & _
nbMSForm & " Feuille Microsoft" & vbCrLf & _
nbStdModule & " Module standard" & vbCrLf & _
nbDocument & " Module de document"
MsgBox mess
End Sub
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
fonctionne aussi et que j'aime bien les "Select Case"...
J'espère avoir fait avancer le schmilblick ;-)
--
Bonne continuation
-------------------------------------------------------------------------------------------
Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnat
Bonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:
Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je
n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
onctionne aussi et que j'aime bien les "Select Case"...
''''''''''''''''''''''''''''''''''''
' cocher la référence à "Microsoft Visual Basic For Applications
que j'avais oublié de préciser.
Bonjour à tous.
Alors là, pour l'optimisation, je ne suis carrément pas d'accord ;-)
LSteph, Ok pour la fonction générique mais, dans ta sub, il y a quand même
4
appels à un parcours complet des modules. On peut gérer cela avec un seul
parcours et un select case:
' cocher la référence à "Microsoft Visual Basic For Applications
Extensibility"
Sub testM()
Dim vBc As VBComponent
Dim nbClassModule As Byte
Dim nbMSForm As Byte
Dim nbStdModule As Byte
Dim nbDocument As Byte
Dim mess As String
For Each vBc In ThisWorkbook.VBProject.VBComponents
Select Case vBc.Type
Case vbext_ct_ClassModule:
nbClassModule = nbClassModule + 1
Case vbext_ct_MSForm:
nbMSForm = nbMSForm + 1
Case vbext_ct_StdModule:
nbStdModule = nbStdModule + 1
Case vbext_ct_Document:
nbDocument = nbDocument + 1
Case Else:
' non comptabilisé
End Select
Next
mess = nbClassModule & " Module de classe" & vbCrLf & _
nbMSForm & " Feuille Microsoft" & vbCrLf & _
nbStdModule & " Module standard" & vbCrLf & _
nbDocument & " Module de document"
MsgBox mess
End Sub
Bon, c'est vrai qu'il faut déclarer 4 compteurs, que la solution initiale
fonctionne aussi et que j'aime bien les "Select Case"...
J'espère avoir fait avancer le schmilblick ;-)
--
Bonne continuation
-------------------------------------------------------------------------------------------Woua, je suis impressionné. Merci.
Je vais pouvoir faire plusieurs variantes. Enfin... dès que CallTree
fonctionnera, parce que pour l'instant c'est pas la joie de ce côté.
Bonne soirée
fetnatBonjour,
on peut aussi envisager une fonction qui dénombre le type choisi:
Function modulescount(Tm As String)
Dim vBc As VBComponent, j As Byte
For Each vBc In ThisWorkbook.VBProject.VBComponents
If vBc.Type = Tm Then j = j + 1
Next
modulescount = j
End Function
'''''''ensuite on peut y appliquer ce qu'on veut
Sub testM()
Dim mess As String
mess = modulescount(vbext_ct_ClassModule) & " Module de classe" &
vbCrLf & _
modulescount(vbext_ct_MSForm) & " Feuille Microsoft" & vbCrLf & _
modulescount(vbext_ct_StdModule) & " Module standard" & vbCrLf & _
modulescount(vbext_ct_Document) & " Module de document"
MsgBox mess
End Sub
'LSteph
On 31 juil, 11:40, fetnat wrote:Bonjour,
Dans ma recherche à tatons pour faire fonctionner CallTree, je
n'arrive
pas compter le nombre de modules dans le classeur actif.
Le sujet a été abordé jadis ici
:http://groups.google.com/group/microsoft.public.fr.excel/browse_threa...
ActiveWorkbook.Modules.Count
ainsi que
m = m + Workbooks(asFiles(i)).Modules(.Modules.Count)
retourne zéro.
On dirait que c'est une vieille syntaxe de XL95 ? L'aide trouve la
déclaration private d'un module mais je ne vois pas le comptage.
Comment compter les modules d'un classeur sous XL 2003 ?
Merci pour l'aide
fetnat