Fermeure classeur excel

jm7123 Messages postés 4 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 22 septembre 2004 - 13 avril 2004 à 17:34
juvamine Messages postés 468 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 30 août 2007 - 15 avril 2004 à 12:50
Je cherche a fermer un seul classeur excel et ce depuis excel.
Pb : lorsque je demande de fermer le classeur specifier , ts les autres classeurs ouverts dans l'instance Excel se ferment aussi alors que je souhaiterais les garder ouverts......

Comment faire???Merci d'avance.

6 réponses

xerque Messages postés 43 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 20 avril 2007
13 avril 2004 à 19:31
En mettant :
Windows("fichier.xls").Close

Tu trouves ces fonctions en faisaint enregistrer les macros depuis excel.
0
jm7123 Messages postés 4 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 22 septembre 2004
14 avril 2004 à 09:32
Je te remercie mais j'ai deja essaye de cette maniere mais a ma grande surprise cela ne marche pas.........
J'attend d'autres idees.......
Merci
0
juvamine Messages postés 468 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 30 août 2007 2
14 avril 2004 à 10:48
application.Workbooks(sonIndex).close

voila
++

Retrouvez une équipe de développeurs confirmés sur le tchate:
serveur : bastia.zefunChat.net
port : 6667
chan : #programmation
0
xerque Messages postés 43 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 20 avril 2007
14 avril 2004 à 21:19
Le Windows("fichier.xls").Close ca marche bien chez moi. Mais en tout cas c'est pas grave puisque ce qu'a mis juvambien est mieux :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jm7123 Messages postés 4 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 22 septembre 2004
15 avril 2004 à 09:01
Non parce aue je l'utilise a l'interieur de la fonction callback "TimeProc" qui elle meme est applelée par SetTimer.
La fonction SetTimer est elle-même déclenchée par "Workbook_open". Et dans ce cas de figure faites le test cela ne marche pas.......
Je vous marque le code....peut être cela vous eclaireras.....

Encore merci!!

Private Sub Workbook_Open()
'Demarrage du compteur pour fermeture auto du classeur
'Fonction editee dans TempoFermeture
StartTimer
End Sub
___________________________________________________
___________________________________________________

Public Declare Function SetTimer Lib "user32" ( _
ByVal hWnd As Long, ByVal nIDEvent As Long, _
ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Public Declare Function KillTimer Lib "user32" ( _
ByVal hWnd As Long, ByVal nIDEvent As Long) As Long

Public TimerID As Long
Public TimerSeconds As Single

'Demarrage du compteur
'Cette fonction est appelee a l'ouverture du classeur
Sub StartTimer()
TimerSeconds = 600 'frequence d'actualisation du compteur
TimerID = SetTimer(0&, 0&, TimerSeconds * 1000&, AddressOf TimerProc)
End Sub

'Arret du compteur
Sub EndTimer()
On Error Resume Next
KillTimer 0&, TimerID
End Sub

'procedure appelee cycliquement pqr windows
'le temps de cycle est egal a la valeur de la variable TimerSeconds (exprimee en ms )*1000
Sub TimerProc(ByVal hWnd As Long, ByVal uMsg As Long, _
ByVal nIDEvent As Long, ByVal dwTimer As Long)
'Fin du compteur pour fermeture auto du classeur
EndTimer
Fermeture
End Sub

Sub Fermeture()
ThisWorkbook.Save
Windows("Base AdD et DA.MEI.V49.xls").Activate
ActiveWindow.Close
End Sub
0
juvamine Messages postés 468 Date d'inscription vendredi 21 février 2003 Statut Membre Dernière intervention 30 août 2007 2
15 avril 2004 à 12:50
si le .save marche...tu peux compter sur un ThisWorkbook.Close

je peu pas téclairé bcp car jai jamais utilisé cette API

++
juva

Retrouvez une équipe de développeurs confirmés sur le tchate:
serveur : bastia.zefunChat.net
port : 6667
chan : #programmation
0
Rejoignez-nous