Application.DisplayAlerts

Le
j-pascal
Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de
coller les données dans un autre classeur. J'ai un message m'indiquant
que le presse papier contient bcp de données (qqch comme ça) et me
demande de cliquer sur oui si je veux les utiliser plus tard

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à
False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage
des valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que
j'ai plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris
sur le nom en question, il me retourne bien : "relance s15 import.xls"
(avec le chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-(
]

Merci d'avance pour votre aide,

JP
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #19123071
Bonsoir.
Après le coller, ajoute :
Application.CutCopyMode = False
Pour le DisplayAlerts, je le remets toujours dans l'état initial, bien
que "End Sub" doive rétablir la rétablir ab initio.
Cordialement.
Daniel

Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de coller
les données dans un autre classeur. J'ai un message m'indiquant que le presse
papier contient bcp de données (qqch comme ça) et me demande de cliquer sur
oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le choix
par défaut, je pensais utiliser "Application.DisplayAlerts" à False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je remette
le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage des
valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que j'ai
plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur le
nom en question, il me retourne bien : "relance s15 import.xls" (avec le
chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP


j-pascal
Le #19123251
Bonsoir Daniel,

Oui mais, le message d'alerte je l'ai à la fermeture du fichier (et
donc avant le collage !). Ce qui signifie (je pense) que le presse
papier doit temporairement contenir les données à coller.

JP

Bonsoir.
Après le coller, ajoute :
Application.CutCopyMode = False
Pour le DisplayAlerts, je le remets toujours dans l'état initial, bien que
"End Sub" doive rétablir la rétablir ab initio.
Cordialement.
Daniel

Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de coller
les données dans un autre classeur. J'ai un message m'indiquant que le
presse papier contient bcp de données (qqch comme ça) et me demande de
cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage des
valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que j'ai
plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur le
nom en question, il me retourne bien : "relance s15 import.xls" (avec le
chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP




Daniel.C
Le #19123441
Alors, oui :
Application.DisplayAlerts = False
fermeture du classeur
...
coller
Application.CutCopyMode = False
Application.DisplayAlerts = True
Daniel

Bonsoir Daniel,

Oui mais, le message d'alerte je l'ai à la fermeture du fichier (et donc
avant le collage !). Ce qui signifie (je pense) que le presse papier doit
temporairement contenir les données à coller.

JP

Bonsoir.
Après le coller, ajoute :
Application.CutCopyMode = False
Pour le DisplayAlerts, je le remets toujours dans l'état initial, bien que
"End Sub" doive rétablir la rétablir ab initio.
Cordialement.
Daniel

Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de
coller les données dans un autre classeur. J'ai un message m'indiquant que
le presse papier contient bcp de données (qqch comme ça) et me demande de
cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage
des valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que
j'ai plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur
le nom en question, il me retourne bien : "relance s15 import.xls" (avec
le chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP






LSteph
Le #19124181
bonjour,

Oui!

Il y a certes des propriétés comme pour screenupdating d'ailleurs où ce
n'est pas indispensable puisque c'est automatiquement rétabli en sortie
de la macro end sub
mais pour la forme ;-) et la bonne habitude de codage c'est préférable.

--
lSteph

j-pascal a écrit :
Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de
coller les données dans un autre classeur. J'ai un message m'indiquant
que le presse papier contient bcp de données (qqch comme ça) et me
demande de cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage
des valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que
j'ai plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur
le nom en question, il me retourne bien : "relance s15 import.xls" (avec
le chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP




j-pascal
Le #19124911
Bonjour Stéphane,

Merci pour cette précision.

JP

bonjour,

Oui!

Il y a certes des propriétés comme pour screenupdating d'ailleurs où ce n'est
pas indispensable puisque c'est automatiquement rétabli en sortie de la macro
end sub
mais pour la forme ;-) et la bonne habitude de codage c'est préférable.

--
lSteph

j-pascal a écrit :
Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de coller
les données dans un autre classeur. J'ai un message m'indiquant que le
presse papier contient bcp de données (qqch comme ça) et me demande de
cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage des
valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que j'ai
plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur le
nom en question, il me retourne bien : "relance s15 import.xls" (avec le
chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP






j-pascal
Le #19124901
Bonjour Daniel,

Je suis surpris de voir que tu proposes un "Application.CutCopyMode =
False" car le fichier initial est fermé et a priori quand j'aurai collé
les valeurs dans le fichier destination il ne devrait plus rien y avoir
dans le presse papier ?!

Pour moi, "Application.CutCopyMode = False" s'applique à une feuille et
non au presse-papier lui-même. Mais je dis peut-être (surement) une
bêtise.

JP

Alors, oui :
Application.DisplayAlerts = False
fermeture du classeur
...
coller
Application.CutCopyMode = False
Application.DisplayAlerts = True
Daniel

Bonsoir Daniel,

Oui mais, le message d'alerte je l'ai à la fermeture du fichier (et donc
avant le collage !). Ce qui signifie (je pense) que le presse papier doit
temporairement contenir les données à coller.

JP

Bonsoir.
Après le coller, ajoute :
Application.CutCopyMode = False
Pour le DisplayAlerts, je le remets toujours dans l'état initial, bien que
"End Sub" doive rétablir la rétablir ab initio.
Cordialement.
Daniel

Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de
coller les données dans un autre classeur. J'ai un message m'indiquant
que le presse papier contient bcp de données (qqch comme ça) et me
demande de cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à
False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage
des valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que
j'ai plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur
le nom en question, il me retourne bien : "relance s15 import.xls" (avec
le chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP








Daniel.C
Le #19127321
Le fait de coller les valeurs ne vide pas ton presse-papiers. Fais
l'opération manuellement, tu peux faire autant de collage que tu le
souhaites. Le message que tu occultes te demande si tu veux conserver
les données dans le presse-papiers (et la réponse est "oui" par
défaut).
Daniel

Bonjour Daniel,

Je suis surpris de voir que tu proposes un "Application.CutCopyMode = False"
car le fichier initial est fermé et a priori quand j'aurai collé les valeurs
dans le fichier destination il ne devrait plus rien y avoir dans le presse
papier ?!

Pour moi, "Application.CutCopyMode = False" s'applique à une feuille et non
au presse-papier lui-même. Mais je dis peut-être (surement) une bêtise.

JP

Alors, oui :
Application.DisplayAlerts = False
fermeture du classeur
...
coller
Application.CutCopyMode = False
Application.DisplayAlerts = True
Daniel

Bonsoir Daniel,

Oui mais, le message d'alerte je l'ai à la fermeture du fichier (et donc
avant le collage !). Ce qui signifie (je pense) que le presse papier doit
temporairement contenir les données à coller.

JP

Bonsoir.
Après le coller, ajoute :
Application.CutCopyMode = False
Pour le DisplayAlerts, je le remets toujours dans l'état initial, bien
que "End Sub" doive rétablir la rétablir ab initio.
Cordialement.
Daniel

Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de
coller les données dans un autre classeur. J'ai un message m'indiquant
que le presse papier contient bcp de données (qqch comme ça) et me
demande de cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à
False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage
des valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que
j'ai plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris sur
le nom en question, il me retourne bien : "relance s15 import.xls" (avec
le chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-( ]

Merci d'avance pour votre aide,

JP










j-pascal
Le #19127751
Ok, c'est noté, merci.

JP

Le fait de coller les valeurs ne vide pas ton presse-papiers. Fais
l'opération manuellement, tu peux faire autant de collage que tu le
souhaites. Le message que tu occultes te demande si tu veux conserver les
données dans le presse-papiers (et la réponse est "oui" par défaut).
Daniel

Bonjour Daniel,

Je suis surpris de voir que tu proposes un "Application.CutCopyMode =
False" car le fichier initial est fermé et a priori quand j'aurai collé les
valeurs dans le fichier destination il ne devrait plus rien y avoir dans le
presse papier ?!

Pour moi, "Application.CutCopyMode = False" s'applique à une feuille et non
au presse-papier lui-même. Mais je dis peut-être (surement) une bêtise.

JP

Alors, oui :
Application.DisplayAlerts = False
fermeture du classeur
...
coller
Application.CutCopyMode = False
Application.DisplayAlerts = True
Daniel

Bonsoir Daniel,

Oui mais, le message d'alerte je l'ai à la fermeture du fichier (et donc
avant le collage !). Ce qui signifie (je pense) que le presse papier doit
temporairement contenir les données à coller.

JP

Bonsoir.
Après le coller, ajoute :
Application.CutCopyMode = False
Pour le DisplayAlerts, je le remets toujours dans l'état initial, bien
que "End Sub" doive rétablir la rétablir ab initio.
Cordialement.
Daniel

Bonsoir,

Je dois fermer un classeur après avoir copié une plage mais avant de
coller les données dans un autre classeur. J'ai un message m'indiquant
que le presse papier contient bcp de données (qqch comme ça) et me
demande de cliquer sur oui si je veux les utiliser plus tard ...

J'imagine que je dois effectivement cliquer sur oui (!). Comme c'est le
choix par défaut, je pensais utiliser "Application.DisplayAlerts" à
False.

Si cette solution est la bonne, pouvez-vous me dire s'il faut que je
remette le tout à True à la fin [?] de la procédure ?

En fait, je préfère fermer "prématurément" le classeur car j'ai un
"insoluble" pb de réactivation de celui-ci pour le fermer après collage
des valeurs.

Un peu hors-sujet :

[Si je veux repasser sur mon classeur initial,
"Windows("relance s15 import.xls").Activate" fonctionne,
par contre, si j'écris :
"Workbooks(NomFichierImport).Activate" ça ne fonctionne pas, alors que
j'ai plus haut :
NomFichierImport = Application.GetOpenFilename(typeFichier, , Titre)

Ce qui est étrange, c'est que quand je passe le curseur de la souris
sur le nom en question, il me retourne bien : "relance s15 import.xls"
(avec le chemin complet !!

A priori les classeurs sont les mêmes ! Je n'y comprends plus rien ;-(
]

Merci d'avance pour votre aide,

JP












Publicité
Poster une réponse
Anonyme