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

Copier dans un classeur déjà ouvert ou pas

20 réponses
Avatar
HD
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre classeur (fermé
et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est ouvert, il y a
une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi bien avec
le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé

10 réponses

1 2
Avatar
jps
ohhhhhhhhhhh ben, si on se met à pinailler maintenant entre nous, joël, moi
je ne joue plus...nos relations doivent rester empreintes de ce climat de
confiance que même les corses et les auvergnats nous envient....
jps

"Joël GARBE" a écrit dans le message de
news:41a7aa3b$0$795$
Certes, à condition que l'erreur vienne du fait que le classeur est déjà
ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exemple

;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre

les décisions qui s'imposent (sauf quand la source d'erreur est unique, il
va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message de
news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est ouvert,
il




y
a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien




avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé














Avatar
jps
:-))))))))
et puis, je vais te dire un truc LeSteph : si tu fermes le classeur avant
que HD y ait collé ses trucs, ça va pas l'arranger, si?
jps

"Joël GARBE" a écrit dans le message de
news:41a7ac6b$0$16331$
Peut-être, mais on la voit pas ta solution !!!

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"LeSteph" a écrit dans le message de news:
%
Dites les copaings
croyez pas que ma solution elle est plus simple
si c'est le classeur on le ferme et sinon c'est bon
ô peuchère

lSteph
"Joël GARBE" a écrit dans le message de news:
41a7aa3b$0$795$
Certe, à condition que l'erreur vienne du fait que le classeur est déjà
ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exmple ;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre les décisions qui s'imposent (sauf quand la source d'erreur est
unique, il va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message
de news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre
classeur






(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est
ouvert,






il
y


a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien
avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé






















Avatar
LeSteph
:o))
Sacré décalage par rapport à Greenwich

"Joël GARBE" a écrit dans le message de news:
41a7ae5c$0$17354$
Et ben, il est pas arrivé jusqu'en Normandie ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"LeSteph" a écrit dans le message de news:

:?
juste sous le topic de hd à 22h53
'---
au debut de ta macro
fermer le classeur:

Sub fermit()
Dim wb
For Each wb In Workbooks
If wb.Name = "Classeur2" Then wb.Close True
Next

End Sub
'--

"Joël GARBE" a écrit dans le message de news:
41a7ac6b$0$16331$
Peut-être, mais on la voit pas ta solution !!!

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"LeSteph" a écrit dans le message de news:
%
Dites les copaings
croyez pas que ma solution elle est plus simple
si c'est le classeur on le ferme et sinon c'est bon
ô peuchère

lSteph
"Joël GARBE" a écrit dans le message de news:
41a7aa3b$0$795$
Certe, à condition que l'erreur vienne du fait que le classeur est
déjà ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué
par exmple ;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre les décisions qui s'imposent (sauf quand la source d'erreur
est unique, il va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le
message de news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre
classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est
ouvert, il
y


a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien
avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé






























Avatar
Joël GARBE
Sans rancune,

Bonne nuit ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message de
news:
ohhhhhhhhhhh ben, si on se met à pinailler maintenant entre nous, joël,
moi
je ne joue plus...nos relations doivent rester empreintes de ce climat de
confiance que même les corses et les auvergnats nous envient....
jps

"Joël GARBE" a écrit dans le message de
news:41a7aa3b$0$795$
Certes, à condition que l'erreur vienne du fait que le classeur est déjà
ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exemple

;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre

les décisions qui s'imposent (sauf quand la source d'erreur est unique,
il
va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message
de
news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est ouvert,
il




y
a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien




avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé

















Avatar
jps
c'est pourtant le pays qui a failli me donner le jour...
jps

"Joël GARBE" a écrit dans le message de
news:41a7ae5c$0$17354$
Et ben, il est pas arrivé jusqu'en Normandie ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"LeSteph" a écrit dans le message de news:

:?
juste sous le topic de hd à 22h53
'---
au debut de ta macro
fermer le classeur:

Sub fermit()
Dim wb
For Each wb In Workbooks
If wb.Name = "Classeur2" Then wb.Close True
Next

End Sub
'--

"Joël GARBE" a écrit dans le message de news:
41a7ac6b$0$16331$
Peut-être, mais on la voit pas ta solution !!!

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"LeSteph" a écrit dans le message de news:
%
Dites les copaings
croyez pas que ma solution elle est plus simple
si c'est le classeur on le ferme et sinon c'est bon
ô peuchère

lSteph
"Joël GARBE" a écrit dans le message de news:
41a7aa3b$0$795$
Certe, à condition que l'erreur vienne du fait que le classeur est
déjà





ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exmple ;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre les décisions qui s'imposent (sauf quand la source d'erreur
est





unique, il va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le
message





de news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre
classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est
ouvert, il
y


a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien
avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé






























Avatar
LeSteph
Bonsoir Jean Paul
;-)

"jps" a écrit dans le message de
news:
ohhhhhhhhhhh ben, si on se met à pinailler maintenant entre nous, joël,
moi
je ne joue plus...nos relations doivent rester empreintes de ce climat de
confiance que même les corses et les auvergnats nous envient....
jps

"Joël GARBE" a écrit dans le message de
news:41a7aa3b$0$795$
Certes, à condition que l'erreur vienne du fait que le classeur est déjà
ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exemple

;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre

les décisions qui s'imposent (sauf quand la source d'erreur est unique,
il
va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message
de
news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est ouvert,
il




y
a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien




avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé

















Avatar
LeSteph
Ben c'est que si on le ferme c'est pour mieux le rouvrir comme prévu s'il
avait été fermé!
:-)))))
"jps" a écrit dans le message de
news: %
:-))))))))
et puis, je vais te dire un truc LeSteph : si tu fermes le classeur avant
que HD y ait collé ses trucs, ça va pas l'arranger, si?
jps

"Joël GARBE" a écrit dans le message de
news:41a7ac6b$0$16331$
Peut-être, mais on la voit pas ta solution !!!

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"LeSteph" a écrit dans le message de news:
%
Dites les copaings
croyez pas que ma solution elle est plus simple
si c'est le classeur on le ferme et sinon c'est bon
ô peuchère

lSteph
"Joël GARBE" a écrit dans le message de news:
41a7aa3b$0$795$
Certe, à condition que l'erreur vienne du fait que le classeur est
déjà
ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exmple ;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre les décisions qui s'imposent (sauf quand la source d'erreur
est
unique, il va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le
message
de news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre
classeur






(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est
ouvert,






il
y


a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien
avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé

























Avatar
LeSteph
si,si, rancune, y fait rien que dire du mal de moi!

"Joël GARBE" a écrit dans le message de news:
41a7b027$0$17369$
Sans rancune,

Bonne nuit ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message de
news:
ohhhhhhhhhhh ben, si on se met à pinailler maintenant entre nous, joël,
moi
je ne joue plus...nos relations doivent rester empreintes de ce climat de
confiance que même les corses et les auvergnats nous envient....
jps

"Joël GARBE" a écrit dans le message de
news:41a7aa3b$0$795$
Certes, à condition que l'erreur vienne du fait que le classeur est déjà
ouvert, et non du fait qu'il n'existe pas dans le dossier indiqué par
exemple

;-)

Pour ma part, je préfère analyser les sources possibles d'erreur, et
prendre

les décisions qui s'imposent (sauf quand la source d'erreur est unique,
il
va sans dire...)

cela signifie qu'avant d'ouvir le classeur, je vérifie qu'il existe à
l'endroit attendu

Tout est question de goût

Bonne soirée JP ;-)

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"jps" a écrit dans le message
de
news:
ben moi, je mets un
On Error Resume Next
avant la ligne qui exécute l'ouverture du second classeur
puis en dessous un petit coup de
workbooks("Nom DuClasseur").Activate
ça devrait marcher non?
jps

"Joël GARBE" a écrit dans le message de
news:41a7a650$0$31688$
Bonsoir,

faire une boucle qui test si le clsseur est déjà ouvert, du genre :

Dim oClass as workbook
dim EstOuvert as boolen
estouvertúlse
for each oclass in workbooks
if oclass.name = "NomDuClasseur" then
estouvert = true
exit for
endif
next
if estouvert then
workbooks("Nom DuClasseur").Activate ' (si nécessaire)
else
ouvrir le classeur
endif


--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre
classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est
ouvert,
il




y
a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi
bien




avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé





















Avatar
HD
Ca marche ni-ckel. Super grand merci.
Hervé

"LeSteph" a écrit dans le message de news:
%
Bonsoir,
au debut de ta macro
fermer le classeur:

Sub fermit()
Dim wb
For Each wb In Workbooks
If wb.Name = "Classeur2" Then wb.Close True
Next

End Sub
'attention au nom du classeur c'est sensible à la casse

'lsteph

"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est ouvert, il y
a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi bien
avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé







Avatar
LeSteph
:-) à bientôt
lSteph
"HD" a écrit dans le message de news:

Ca marche ni-ckel. Super grand merci.
Hervé

"LeSteph" a écrit dans le message de news:
%
Bonsoir,
au debut de ta macro
fermer le classeur:

Sub fermit()
Dim wb
For Each wb In Workbooks
If wb.Name = "Classeur2" Then wb.Close True
Next

End Sub
'attention au nom du classeur c'est sensible à la casse

'lsteph

"HD" a écrit dans le message de news:
u$O2o%23$
Bonsoir,
J'ai réalisé une macro qui copie des cellules vers un autre classeur
(fermé et qui s'ouvre donc à ce moment).
Par contre si je réactive ma macro alors que le classeur est ouvert, il
y a une erreur.
Comment gérer cette erreur et faire que ma macro fonctionne aussi bien
avec le classeur ouvert que fermé?
MErci de votre aide par avance.
Hervé











1 2