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

Passage d'un fichier Excel à un autre - Suite question

6 réponses
Avatar
Al
Re bonjour,

Je travaille sur "fich1"
J'ouvre mon "fich2", mais si celui-ci est déja ouvert, le message "fichier
déja ouvert, si vous l'ouvrez à nouveau....etc" s'affiche
Comment faire pour ne plus avoir ? ou tester si le fich2 est déjà ouvert en
arrière-plan ?

Encore une fois, Merci de m'aider comme vous l'avez déja fait aujourd'hui...
Al

6 réponses

Avatar
michdenis
Bonjour,

Pour tester si ce fichier est déjà ouvert :

A -
Dim Fichier As string
Dim Wk As Workbook
dim Chemin As string

Chemin = "C:UsersDmDocuments"
Fichier = "MonClasseur.xls"

On error resume next
set Wk = Workbooks(Fichier)
if err <>0 then
err = 0
set Wk = Workbooks.Open(Chemin & Fichier)
end if

Et tu continues ton code en utilisant Wk.
La variable Objet Wk a les mêmes méthodes ou propriétés
que si tu utilisais :
Workbooks(fichier).Worksheets("Feuil1").range("A1")
c'est plus court en utilisant la variable.
Wk.Worksheets("Feuil1").Range("A1")

Si tu désires seulement faire disparaître le message
si ton fichier est déjà ouvert :

B -
Application.displayalerts = False
Workbooks.Open Chemin & Fichier
Application.displayalerts = True

Le danger avec cette approche, c'est que tu risques de perdre
le travail déjà fait sur le fichier qui était déjà ouvert.














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

Re bonjour,

Je travaille sur "fich1"
J'ouvre mon "fich2", mais si celui-ci est déja ouvert, le message "fichier
déja ouvert, si vous l'ouvrez à nouveau....etc" s'affiche
Comment faire pour ne plus avoir ? ou tester si le fich2 est déjà ouvert en
arrière-plan ?

Encore une fois, Merci de m'aider comme vous l'avez déja fait aujourd'hui...
Al
Avatar
Daniel.C
Essaie :

Dim Top As Boolean
For i = 1 To Workbooks.Count
If Workbooks(i).Name = "fich2.xlxs" Then
Top = True
Exit For
End If
Next i
If Top = False Then Workbook.Open "fich2.xls"

Daniel


Re bonjour,

Je travaille sur "fich1"
J'ouvre mon "fich2", mais si celui-ci est déja ouvert, le message "fichier
déja ouvert, si vous l'ouvrez à nouveau....etc" s'affiche
Comment faire pour ne plus avoir ? ou tester si le fich2 est déjà ouvert en
arrière-plan ?

Encore une fois, Merci de m'aider comme vous l'avez déja fait aujourd'hui...
Al
Avatar
Al
Merci encore, tout fonctionne...! Très statisfait de vos réponses...!
Une remarque pour Denis, tes réponses pour la méthode . Find sont-elles
valables sous Excel2003 ?

A+ et Merci encore.


"Al" a écrit dans le message de
news:
Re bonjour,

Je travaille sur "fich1"
J'ouvre mon "fich2", mais si celui-ci est déja ouvert, le message "fichier
déja ouvert, si vous l'ouvrez à nouveau....etc" s'affiche
Comment faire pour ne plus avoir ? ou tester si le fich2 est déjà ouvert
en arrière-plan ?

Encore une fois, Merci de m'aider comme vous l'avez déja fait
aujourd'hui...
Al

Avatar
michdenis
| Find sont-elles valables sous Excel2003 ?

Pour toutes les versions Excel 1977 - 2010
Avatar
Modeste
Bonsour®

"michdenis" a écrit
| Find sont-elles valables sous Excel2003 ?

Pour toutes les versions Excel 1977 - 2010



1977 !!! ça ne nous rajeunit pas tout ça !!!
prémonition peut-être ??? à cette époque j'excellais déjà sur MITRA 115
Avatar
michdenis
| 1977 !!! ça ne nous rajeunit pas tout ça !!!
| prémonition peut-être ??? à cette époque j'excellais déjà sur MITRA 115

Tu veux dire qu'Excel existant même avant ça ?
;-))