> Tous les forums > Forum Bureautique
 Tester si classeur est ouvert ou ferméSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
JeanDel
  Posté le 20/11/2006 @ 08:44 
Aller en bas de la page 
Petit astucien

Bonjour à chacun, chacune,

Ma question aujourdhui est de savopir s'il est possible de tester si un classeur est ouvert ou fermé.

Le chemin de ce classeur est le suivant : D:/Archives/Clients

Si ouvert : Ma macro 1

Si fermé : Ma macro 2

En vous remerciant.

Publicité
dixit
 Posté le 20/11/2006 à 09:03 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

bonjour,

voici un exemple à adapter :

Sub traitement(chemin, fichier)
fichtravail = chemin + fichier
' --------- le fichier est à ouvrir si non ouvert ---------------------
drapeau = 0
For Each classeur In Workbooks ' pour chaque classeur dans l'ensemble des classeurs ouverts
If classeur.Name = fichier Then 'si le nom est celui du classeur celui-ci est ouvert
drapeau = 1
Exit For
'Cells(4, 1) = "fichier ouvert" ' uniquement pour test
End If
Next
If drapeau = 0 Then ' si drapeau=0 c'est que le fichier n'est pas ouvert
' Cells(4, 1) = "fichier non ouvert j'ouvre !!!" ' uniquement pour test
Workbooks.Open Filename:=fichtravail 'ouverture du fichier
Application.StatusBar = "Chargement effectué du fichier " + fichtravail
End If
Workbooks(fichier).Activate
' ***** éventuellement sélectionner la feuille concernée

ps : les variables doivent être déclarées en début de sub ;

dans cet exemple notamment : Dim classeur As Workbook



Modifié par dixit le 20/11/2006 09:36
dixit
 Posté le 20/11/2006 à 10:27 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

re

voici une adaptation

Sub fichierouvert()

Dim classeur As Workbook
Dim fichier As String

dim drapeau as byte


' --------- vérifier si le fichier est ouvert ---------------------
drapeau = 0
fichier = "leclasseur.xls"
For Each classeur In Workbooks ' pour chaque classeur dans l'ensemble des classeurs ouverts
If classeur.Name = fichier Then 'si le nom est celui du classeur celui-ci est ouvert
mamacro1
drapeau = 1
Exit For
End If
Next
If drapeau = 0 Then ' si drapeau=0 c'est que le fichier n'est pas ouvert
mamacro2
End If
End Sub


Sub mamacro1()
'Cells(4, 1) = "fichier ouvert" ' uniquement pour test
End Sub

Sub mamacro2()
'Cells(4, 1) = "fichier non ouvert !!!" ' uniquement pour test
End Sub

dixit
 Posté le 20/11/2006 à 11:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

re

j'ai placé la macro dans un classeur à titre d'exemple : http://www.ideocene.com/telechargement/pcastucesID12684.xls

à+



Modifié par dixit le 21/11/2006 08:49
JeanDel
 Posté le 20/11/2006 à 12:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour dixit,

Je te remercie de nouveau et je vais tester cet après midi ce que tu m'indiques si gentiment.

Bonne fin de journée.

A+

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
11,90 €Adaptateur USB 3.0 Ethernet Gigabit TP-Link UE300 à 11,90 €
Valable jusqu'au 03 Août

Amazon fait une promotion sur l'adaptateur USB 3.0 Ethernet Gigabit TP-Link UE300 qui passe à 11,90 € au lieu de 20 €. Cet adaptateur vous permettra de rajouter une prise Ethernet Gigabit à votre ordinateur portable (ou votre tablette via un adaptateur OTG) qui en est dépourvu.


> Voir l'offre
129,99 €Box Android Nvidia Shield TV 2019 8 Go avec télécommande à 129,99 €
Valable jusqu'au 03 Août

Cdiscount fait une belle promotion sur la box Android Nvidia Shield TV 2019 8 Go avec sa télécommande à 129,99 € grâce au code promo 10EUROS. On trouve ailleurs ce pack à partir de 159 €. Compatible FullHD et 4K, vous pourrez utiliser vos applications Android, jouer et regarder des films et des séries en très haute résolution sur votre TV (compatible Kodi, Molotov, Netflix, Disney+, YouTube ...).


> Voir l'offre
214,13 €Ecran PC LED 28 pouces Samsung U28E590D (4K UHD, 1 ms, Freesync) à 214,13 € livré
Valable jusqu'au 03 Août

Amazon Allemagne fait une promotion sur l'écran PC LED 28 pouces Samsung U28E590D qui passe à 200,68 € (avec la TVA ajustée). Comptez 13,45 € pour la livraison en France, soit un total de 214,13 € livré alors qu'on le trouve ailleurs à partir de 250 €. Cet écran au format 16/9 offre une dalle 4K (résolution 3840x2160) avec un temps de réponse de 1 ms. Il est compatible FreeSync. Une bonne affaire ! 

Vous pouvez utiliser votre compte Amazon France sur Amazon Allemagne et il n'y a pas de douane. Si vous êtes perdu en allemand, vous pouvez traduire le site en anglais.


> Voir l'offre

Sujets relatifs
Écrire sur un classeur fermé
Excel 2007 Copier/Coller d’une feuille à l’autre Dans un même classeur.
Recopie cellule dans un autre classeur
Excel mémoire insuffisante pour ouvrir un nouveau classeur
Classeur repetitions de colonne en colonne
ccleaner ne se ferme pas
Classeur Calc de Libre Office
Windows Live mail se ferme au bout de 30 secondes
recherche dans classeur
Déprotection d'un classeur exel 2007
Plus de sujets relatifs à Tester si classeur est ouvert ou fermé
 > Tous les forums > Forum Bureautique