Classeur hors collection

Sylvain

XLDnaute Occasionnel
Bonjour,
Je voulais tester si un classeur était ouvert sans utiliser on error resume next. Or le classeur qui existe bien ne fait partie ni de la collection workbooks, ni de la collection addins. Il s'agit d'un programme dont le nom est machin.xla, mais qu'un programme d'installation place dans le répertoire xlstart.

Avez-vous un moyen de lister tous les classeurs ouverts .xls et .xla ?

Je suis sous XL 2000.

Merci

A+
 

Pierrot93

XLDnaute Barbatruc
Re : Classeur hors collection

Bonjour Sylvain

regarde la maco ci dessous :

Code:
Sub test()
Dim wb As Workbook, wa As AddIn
i = 1
For Each wb In Workbooks
    Cells(i, 1) = wb.Name
    i = i + 1
Next wb
For Each wa In AddIns
    Cells(i, 1) = wa.Name
    i = i + 1
Next wa
End Sub

bonne journée
@+
 

Sylvain

XLDnaute Occasionnel
Re : Classeur hors collection

Merci, mais non ça ne marche pas.

Le classeur machin.xla est simplement mis dans le répertoire xlstart donc il s'ouvre en même temps qu'excel, mais comme il n'est pas xls, il n'apparaît pas dans la collection workbooks, et comme il n'a jamais été installé comme macro complémentaire, il n'apparaît pas non plus dans la collection Addins.
Si je demande workbooks("machin.xla").name ça va marcher mais c'est parceque je connais le nom.

A+
 

Sylvain

XLDnaute Occasionnel
Re : Classeur hors collection

Non pas du tout, c'est un programme extérieur à Excel qui installe des dlls et copie ce fichier dans le document xlstart. Ici c'est un fichier utile, mais il me semble que si c'était un virus ce serait pareil.

A+
 

MichelXld

XLDnaute Barbatruc
Re : Classeur hors collection

bonjour


Est ce qu'une boucle sur les fichiers du répertoire XlStart pourrait convenir ?

Code:
Dim Chemin As String, Fichier As String
 
Chemin = Application.StartupPath & "\"
 
Fichier = Dir(Chemin & "*.*")
Do While Len(Fichier) > 0
    Debug.Print Chemin & Fichier
    Fichier = Dir()
Loop


Bonne journée
MichelXld
 

Sylvain

XLDnaute Occasionnel
Re : Classeur hors collection

Bonjour,

Merci pour cette option, j'ai essayé en fait elle regarde dans :

C:\Documents and Settings\MOI\Application Data\Microsoft\Excel\XLSTART\
(où moi est mon non d'utilisateur)

alors que le fichier est ici :
C:\Program Files\Microsoft Office\Office\xlstart\

Sinon ça marche bien.

Je ne sais pas s'il existe d'autres endroits où sont stockés des programmes à lancement automatique (je ne savais pas qu'il y avait 2 xlstart).

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 347
Membres
103 525
dernier inscrit
gbaipc