Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 10/02/2011
Messages:
9
Système d'exploitation: PC Version Excel utilisée: 2003 |
Posté le : 10-02-2011 15h21
Je mets à jour un fichier excel à partir d'autres fichiers excel. Avant d'ouvrir les autres fichiers, je cherche à tester si le fichier est déjà ouvert
|
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 18/05/2006
De Saône-et-Loire (71)
Messages:
1539
Système d'exploitation: PC Version Excel utilisée: 97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365 |
Posté le : 10-02-2011 23h27
Citation :
Basket a écrit : Bonne continuation. Didier_mDF
Le Webmaster La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien |
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 09/01/2008
De Montréal, Québec
Messages:
463
Système d'exploitation: PC Version Excel utilisée: 97 à 2016 |
Posté le : 12-02-2011 00h21
Bonjour Didier, le forum, basket,
Il est vrai que la bienséance aurait commandé une permutation des salutations mais je m’en voudrais de ne pas souligner l’à-propos de la remarque de Didier. Ceci dit, poursuivons. Il y a bien évidemment trente-six façons de procéder. En voici une. Dans un module de code copier le bout de code suivant : Option Explicit Le temps d'exécution est assez important (un peu moins de deux secondes sur mon poste) puisqu'une nouvelle instance d'Excel est créée. Cette lenteur, toute relative, ne devrais pas gêner outre mesure je crois. Cordialement, Guy Édition : Dans ce qui précède on suppose que le classeur n'est pas en mode lecture seule à dessein...
Edité par Guy le 12/02/2011 00:46:53
|
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 10/02/2011
Messages:
9
Système d'exploitation: PC Version Excel utilisée: 2003 |
Posté le : 14-02-2011 17h12
Il est vrai, j'aurais dû dire bonjour avant de poser ma question, je m'en excuse....la prochaine fois je ferai plus attention... pour autant, j'ai découvert le site et je le trouve très bien
|
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 09/01/2008
De Montréal, Québec
Messages:
463
Système d'exploitation: PC Version Excel utilisée: 97 à 2016 |
Posté le : 14-02-2011 23h01
Bonjour Basket,
Et mis à part ces bonjours de circonstance est-ce que la fonction de mon message précédent fait l'affaire? Est-ce que tu arrives à t'en servir? As-tu besoin d'autres précisions? Cordialement, Guy |
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 10/02/2011
Messages:
9
Système d'exploitation: PC Version Excel utilisée: 2003 |
Posté le : 15-02-2011 14h58
Bonjour Guy,
J'ai testé ta procédure sur laquelle j'ai eu quelques soucis, je ne suis pas arrivé à y mettre Option Explicit et Dim objExcel As Excel.Application N'étant pas un pro de VBA, j'ai quand même réussi à insérer ton code dans le mien sans ces "option et Dim" et ça marche finement. De ce que je comprends de ta procédure, c'est que tu ouvres le fichier dans un excel non visible, le fait de tester qu'il soit readonly fait que le fichier est déjà ouvert, c'est bien ça ?. Merci de ton aide Cordialement Olivier |
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 05/07/2007
De Aubenas(07)
Messages:
9
Système d'exploitation: PC Version Excel utilisée: 2000 |
Posté le : 15-02-2011 18h03
Bonjour
Je ne résiste au plaisir de montrer cette fonction écrite par Didier dans sa jeunesse Function FichOuvert(F As String) As Boolean Amicalement
Michel_M |
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 09/01/2008
De Montréal, Québec
Messages:
463
Système d'exploitation: PC Version Excel utilisée: 97 à 2016 |
Posté le : 15-02-2011 23h35
Bonjour Michel_m, Basket, Didier, le forum,
Précisions : Effectivement la fonction citée teste l'ouverture du classeur passé en argument mais dans l'instance actuelle (où s'exécute le code) d'Excel. En d'autres termes cette fonction informe sur la présence du classeur F dans la collection des classeurs de l'instance (Workbooks) cependant il est tout à fait possible que le classeur F soit ouvert dans une autre instance d'Excel auquel cas la fonction retourne Faux pour l'instance actuelle alors que le classeur est effectivement (Vrai) ouvert ailleurs. Voilà pourquoi dans le bout de code fourni le test s'effectue sur une nouvelle instance d'Excel pour assurer un test sur l'ensemble du poste (system wide). Pour répondre à la note de Basket qui n'arrive pas à faire rouler le bout de code soumis deux choses:
Cordialemement, Guy
Edité par Guy le 16/02/2011 02:04:30
|
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 10/02/2011
Messages:
9
Système d'exploitation: PC Version Excel utilisée: 2003 |
Posté le : 16-02-2011 09h16
Sub Maj_donnees() Merci pour tes explications, tu trouveras ci joint le code VBA, si des instructions te choquent, n'hésite pas, c'est à aujourd'hui mon premier code VBA sans avoir eu de formation... Cdlt Olivier |
|
|
Re: Comment tester si un fichier excel est déjà ouvert dans une macro | ||
---|---|---|
Inscription: 09/01/2008
De Montréal, Québec
Messages:
463
Système d'exploitation: PC Version Excel utilisée: 97 à 2016 |
Posté le : 16-02-2011 11h23
Bonjour Olivier,
Je n'ai pas fait l'exégèse de ton code seulement j'ai supprimé les variables non déclarées et posé quelques constantes. Pour la suite noter les remarques suivantes :
Voilà pour l'heure, bonne continuation. Cordialement, Guy |
|
|
Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.
Qui consulte actuellement ce sujet ?
1 Utilisateur(s) anonymes