VBA fermer classeur

D

DDC

Guest
bonjour a tous et bon 14 juillet :
J'aimerais creer un petit programme en VBA, me permettant de fermer et/ou de supprimer deux classeurs Excel du nom de "Alpha" et "Beta", si ceux ci sont deja ouvert !!sachant qu'il peut avoir seulement un des deux classeurs qui soit deja ouvert !!!
Quelqu'un pense-t'il pouvoir m'aider sur ce pb ????
 
@

@+Thierry

Guest
Bonsoir David, le Forum

Pour fermer un classeur c'est simple :

Sub OnFerme()
On Error Resume Next 'si il n'est pas ouvert
Workbooks("Alpha").Close False
End Sub(False pour ne pas le sauver, True pour le sauver)

Maintenant si tu dois tester si les deux sont ouverts et que tu veux un message te demandant lequel fermer :

ub OnTestEtOnFerme()
Dim WB As Workbook
Dim TheName1 As String, TheName2 As String
Dim Q As Byte

For Each WB In Workbooks
If WB.Name = "Alpha.xls" Then
TheName1 = "Alpha.xls"
End If
If WB.Name = "Beta.xls" Then
TheName2 = "Beta.xls"
End If
Next

If TheName1 <> "" And TheName2 <> "" Then
Q = MsgBox("Les Deux Classeurs" & vbCrLf & TheName1 & vbCrLf & TheName2 & vbCrLf & "sont Ouverts" & vbCrLf & _
"Voulez Vous fermer le premier (répondre oui)" & vbCrLf & _
"Voulez Vous fermer le Second (répondre non)" & vbCrLf & _
"Ne rien faire (répondre annuler)", vbYesNoCancel)
End If

Select Case Q
Case 6: Workbooks(TheName1).Close False
Case 7: Workbooks(TheName2).Close False
End Select

End Sub

Bonne Soirée
@+Thierry
 

Discussions similaires

Statistiques des forums

Discussions
314 210
Messages
2 107 301
Membres
109 798
dernier inscrit
NAJI2005