Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouverture

4 réponses
Avatar
Pascal
Bonjour,
Sous 2007
Avec ce module lors de l'ouverture de mon Appli je force la fermeture des
autres applications Excel

Sub Ouvre()
Dim Classeur As Workbook
Dim i As Integer
Dim j As Integer

' Fermeture des classeur (sauf le classeur actif)
' en enregistrant les modifications
For Each Classeur In Workbooks
If Classeur.Name <> ThisWorkbook.Name Then
Classeur.Close True
End If
Next Classeur

End Sub

Mais il est toujours possible d'ouvrir une autre application via une
deuxième session Excel.

Donc question toute simple, en VBA comment faire pour avoir la possibilité
de n'ouvrir qu'un session Excel??

Merci
Pascal

4 réponses

Avatar
MichDenis
Bonjour Pascal,

à partir de vba, il n'y a aucun moyen d'empêcher l'usager
d'ouvrir une seconde instance d'Excel. L'application Excel
n'est pas équipée pour faire ce qui incombe au système
d'exploitation Windows. Est-ce qu'il y a moyen de demander
à Windows de surveiller et d'empêcher une seconde instance
d'Excel ? Il faudrait que tu adresses ta demande aux gurus
des forums Windows...Si tu trouves, j'espère que tu partageras
ici tes découvertes ! ;-)

Est-ce possible de savoir ce que tu cherches à réaliser qui exige
la limitation du nombre d'instance ouverte de l'application Excel ?


"Pascal" a écrit dans le message de groupe de discussion :

Bonjour,
Sous 2007
Avec ce module lors de l'ouverture de mon Appli je force la fermeture des
autres applications Excel

Sub Ouvre()
Dim Classeur As Workbook
Dim i As Integer
Dim j As Integer

' Fermeture des classeur (sauf le classeur actif)
' en enregistrant les modifications
For Each Classeur In Workbooks
If Classeur.Name <> ThisWorkbook.Name Then
Classeur.Close True
End If
Next Classeur

End Sub

Mais il est toujours possible d'ouvrir une autre application via une
deuxième session Excel.

Donc question toute simple, en VBA comment faire pour avoir la possibilité
de n'ouvrir qu'un session Excel??

Merci
Pascal
Avatar
Pascal
Merci Denis
Je vais voir les Gourous de Win de ce pas.
Je reviens ici si je trouve.
En ce qui concerne ce que je veux faire,
j'ai réussi d'abord pour le fun et ensuite par sécurité à désactiver l'accés
à VBA à partir de mon application.
Néanmoins cet accés reste possible si on ouvre une deuxième session Excel
Voili Voilou


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

Bonjour Pascal,

à partir de vba, il n'y a aucun moyen d'empêcher l'usager
d'ouvrir une seconde instance d'Excel. L'application Excel
n'est pas équipée pour faire ce qui incombe au système
d'exploitation Windows. Est-ce qu'il y a moyen de demander
à Windows de surveiller et d'empêcher une seconde instance
d'Excel ? Il faudrait que tu adresses ta demande aux gurus
des forums Windows...Si tu trouves, j'espère que tu partageras
ici tes découvertes ! ;-)

Est-ce possible de savoir ce que tu cherches à réaliser qui exige
la limitation du nombre d'instance ouverte de l'application Excel ?


"Pascal" a écrit dans le message de groupe de discussion :

Bonjour,
Sous 2007
Avec ce module lors de l'ouverture de mon Appli je force la fermeture des
autres applications Excel

Sub Ouvre()
Dim Classeur As Workbook
Dim i As Integer
Dim j As Integer

' Fermeture des classeur (sauf le classeur actif)
' en enregistrant les modifications
For Each Classeur In Workbooks
If Classeur.Name <> ThisWorkbook.Name Then
Classeur.Close True
End If
Next Classeur

End Sub

Mais il est toujours possible d'ouvrir une autre application via une
deuxième session Excel.

Donc question toute simple, en VBA comment faire pour avoir la possibilité
de n'ouvrir qu'un session Excel??

Merci
Pascal




Avatar
Pascal
Denis va voir là
http://files.codes-sources.com/fichier.aspx?id9361&f=ModUniqueInstance.bas
Moi je n'arrive pas à le mettre en place
Pascal

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

Bonjour Pascal,

à partir de vba, il n'y a aucun moyen d'empêcher l'usager
d'ouvrir une seconde instance d'Excel. L'application Excel
n'est pas équipée pour faire ce qui incombe au système
d'exploitation Windows. Est-ce qu'il y a moyen de demander
à Windows de surveiller et d'empêcher une seconde instance
d'Excel ? Il faudrait que tu adresses ta demande aux gurus
des forums Windows...Si tu trouves, j'espère que tu partageras
ici tes découvertes ! ;-)

Est-ce possible de savoir ce que tu cherches à réaliser qui exige
la limitation du nombre d'instance ouverte de l'application Excel ?


"Pascal" a écrit dans le message de groupe de discussion :

Bonjour,
Sous 2007
Avec ce module lors de l'ouverture de mon Appli je force la fermeture des
autres applications Excel

Sub Ouvre()
Dim Classeur As Workbook
Dim i As Integer
Dim j As Integer

' Fermeture des classeur (sauf le classeur actif)
' en enregistrant les modifications
For Each Classeur In Workbooks
If Classeur.Name <> ThisWorkbook.Name Then
Classeur.Close True
End If
Next Classeur

End Sub

Mais il est toujours possible d'ouvrir une autre application via une
deuxième session Excel.

Donc question toute simple, en VBA comment faire pour avoir la possibilité
de n'ouvrir qu'un session Excel??

Merci
Pascal




Avatar
MichDenis
| j'ai réussi d'abord pour le fun et ensuite par sécurité
| à désactiver l'accés à VBA à partir de mon application.
| Néanmoins cet accés reste possible si on ouvre une
| deuxième session Excel

Avec Excel, dès que tu donnes l'opportunité à quelqu'un
d'ouvrir ton fichier, ni la protection de la feuille ou du projetVBA
ne sauraient tenir très longtemps devant un "hacker". Cela peut être
frustrant de le constater, mais il n'y a pas grand chose que l'on
puisse y faire. Ne perd pas ton temps à essayer de réaliser
l'impossible.

J'ai vu la procédure que tu as publiée... mais je n'ai pas tenté
de l'adapter à Excel. Est-ce que la chose est possible ? Cela nee
règlerait pas les appréhensions que tu semblent éprouver !