OVH Cloud OVH Cloud

Un bout de code plein de malice!!!

29 réponses
Avatar
MichD
Bonjour,

Ce bout de code à la fin de la procédure. Si je l'exécute par F8 (pas à
pas), tout est OK. Sauf que l'on exécute cette procédure 2 à 4 fois
de manière rapprochée, cela fait planter Excel et il est obligé de
fermer. J'ai ajouté des boucles à titre de temporisation, cela ne change
en rien le résultat...

Est-ce que quelqu'un a une explication?

'=============================================================
ThisWorkbook.Sheets.Copy

'--------------------------------------
T = Timer + 2
Do While Timer < T
DoEvents
Loop
'--------------------------------------

Set Wk = ActiveWorkbook
Wk.SaveAs ThisWorkbook.Path & "\" & Nom, FileFormat:=51

'--------------------------------------
T = Timer + 2
Do While Timer < T
DoEvents
Loop
'--------------------------------------

Application.DisplayAlerts = True
ThisWorkbook.Close False
Application.ScreenUpdating = True
Set Wk = Nothing
'=============================================================


Merci pour votre collaboration.

Denis

9 réponses

1 2 3
Avatar
Jacquouille
L'Agent 212 au rapport, Chef !
j'ai créé un doc avec le texte de la macro en feuil1 comme texte.
Ensuite, j'ai enregistré ce doc sous "Toto.xls" sur le Bureau.
j'ai lancé la macro qui m'a copié Toto.xls sur le bureau, mais en xlsx, et,
a fermé "toto.xls" et a réouvert "toto.xlsx
Voilà, si cela peut vous aider. Je vais laisser toto à sa place jusqu'à la
fin des événements.
PS: beau goal de l'Espagne.
Jacques, testeur
" Le vin est au repas ce que le parfum est à la femme."
.
"LSteph" a écrit dans le message de groupe de discussion :
Re,
je reviens après avoir réitéré (j'avais probablement omis un truc au 1er
Essai.
Donc selon le code ci après sous mon post
mis dans TestMD.xlsm
je peux l'executer 3 ou 4 fois de suite sans erreur
Nota: je suis juste obligé à chaque fois de fermer le toto.xslx qui a été
créé puis de rouvrir TestMD pour executer de nouveau.
--
LSteph
Sub testIt()
'============================================================ Dim nom As String
nom = "toto"
Application.DisplayAlerts = False
ThisWorkbook.Sheets.Copy
'--------------------------------------
T = Timer + 2
Do While Timer < T
DoEvents
Loop
'--------------------------------------
Set Wk = ActiveWorkbook
Wk.SaveAs ThisWorkbook.Path & "" & nom, FileFormat:Q
'--------------------------------------
T = Timer + 2
Do While Timer < T
DoEvents
Loop
'--------------------------------------
Application.DisplayAlerts = True
ThisWorkbook.Close False
Application.ScreenUpdating = True
Set Wk = Nothing
'============================================================ End Sub
---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
http://www.avast.com
Avatar
MichD
Sous Excel 2016, j'ai testé plusieurs façons d'écrire ces quelques
lignes de code, et aucun ne m'a donné satisfaction. Durant mes
nombreux essais, j'ai à quelques reprises réussi à exécuter ce
code 2 ou 3 fois consécutivement. Ce n'est pas suffisant. Le code
doit être sûr et efficace. La notion de chance ne doit pas s'appliquer.
Je ne ferai pas la nomenclature de tous les bogues de cette version...
Essaie ceci. Tu inscris 2 lignes de code dans un module, tu protèges
le projetVBA,(clic droit sur le projetVBA / Propriété du projetVBA /
onglet protection. Tu fermes le fichier et lors de son ouverture à
nouveau, essaie de déprotéger le projetVBA par un faux mot de passe
volontairement, après quoi, tu cliques sur le bouton annuler. La fenêtre
se ferme, mais après avoir fermé le fichier, cette petite fenêtre
réapparaît... impossible de la fermer!
Si tu n'as pas cette version, dépêche-toi de l'acheter, Microsoft a
besoin d'argent! ;-))
MichD
Le 13/06/16 à 09:42, LSteph a écrit :
Re,
je reviens après avoir réitéré (j'avais probablement omis un truc au 1er Essai.
Donc selon le code ci après sous mon post
mis dans TestMD.xlsm
je peux l'executer 3 ou 4 fois de suite sans erreur
Nota: je suis juste obligé à chaque fois de fermer le toto.xslx qui a été créé puis de rouvrir TestMD pour executer de nouveau.
--
LSteph
Sub testIt()
'============================================================ > Dim nom As String
nom = "toto"
Application.DisplayAlerts = False
ThisWorkbook.Sheets.Copy
'--------------------------------------
T = Timer + 2
Do While Timer < T
DoEvents
Loop
'--------------------------------------
Set Wk = ActiveWorkbook
Wk.SaveAs ThisWorkbook.Path & "" & nom, FileFormat:Q
'--------------------------------------
T = Timer + 2
Do While Timer < T
DoEvents
Loop
'--------------------------------------
Application.DisplayAlerts = True
ThisWorkbook.Close False
Application.ScreenUpdating = True
Set Wk = Nothing
'============================================================ > End Sub
Avatar
isabelle
Le 2016-06-13 à 13:38, MichD a écrit :
Si tu n'as pas cette version, dépêche-toi de l'acheter, Microsoft a besoin
d'argent! ;-))

... et ne vous débarrassez pas de vos version xp, elles prendront beaucoup de
valeur ;-0
isabelle
Avatar
DanielCo
Bonjour,
Surtout après le 26 milliards de dollars qu'il vient de débourser pour
LinkedIn.
Cordialement.
Daniel
Si tu n'as pas cette version, dépêche-toi de l'acheter, Microsoft a
besoin d'argent!
Avatar
LSteph
Bonjour MD et Zaza,
Vous rigolez mais chez moi j'ai toujours mon bon vieux 2003 sous Vista
et à mon job on vient de passer tous en 2010 et win7 il y a 2 ans
avant c'était XP et selon les postes 97-2003
donc je penses qu'on aura 2 fois les jeux olympiques avant que cela ne re c hange.
Cordialement.
--
LSteph
Avatar
isabelle
salut LSteph,
je crois bien que le les menaces de ms de ne plus faire de service sur la
version xp en a fait bouger plusieurs, dont moi,
et je le regrette beaucoup, quoique j'ai toujours en stock win 7 et office xp et
je ne suis pas prête à m'en défaire.
isabelle
Le 2016-06-14 à 04:06, LSteph a écrit :
Bonjour MD et Zaza,
Vous rigolez mais chez moi j'ai toujours mon bon vieux 2003 sous Vista
et à mon job on vient de passer tous en 2010 et win7 il y a 2 ans
avant c'était XP et selon les postes 97-2003
donc je penses qu'on aura 2 fois les jeux olympiques avant que cela ne re change.
Cordialement.
--
LSteph
Avatar
isabelle
salut Denis,
Le 2016-06-12 à 10:07, MichD a écrit :
*** J'ai cessé d'intervenir sur les forums Microsoft depuis un an, Excel en
particulier. La majeure partie des questions (98%) portait sur des problèmes
d'installation, des bogues, etc. Pour Microsoft, c’est leur service après-vente
assuré par des bénévoles.
*** Si cela te tente de discuter formules ou procédures, je te suggère
d'adhérer au forum suivant. Plusieurs anciens membres du MPFE sont devenus
assidus à ce groupe dont Modeste. Un forum très dynamique!
http://www.excel-downloads.com/forum/forum-excel/

bien d'accord avec toi, il ont été vraiment chien avec leur service après-vente
en utilisant à outrance toute notre communauté.
je vais lire régulièrement excel-downloads sur le web,
j'aimerais bien trouver la façon de l'intégrer au Thunderbird.
isabelle
Avatar
MichD
Le 17/06/16 à 02:04, isabelle a écrit :
salut Denis,
Le 2016-06-12 à 10:07, MichD a écrit :
*** J'ai cessé d'intervenir sur les forums Microsoft depuis un an,
Excel en
particulier. La majeure partie des questions (98%) portait sur des
problèmes
d'installation, des bogues, etc. Pour Microsoft, c’est leur service
après-vente
assuré par des bénévoles.
*** Si cela te tente de discuter formules ou procédures, je te suggère
d'adhérer au forum suivant. Plusieurs anciens membres du MPFE sont
devenus
assidus à ce groupe dont Modeste. Un forum très dynamique!
http://www.excel-downloads.com/forum/forum-excel/

bien d'accord avec toi, il ont été vraiment chien avec leur service
après-vente en utilisant à outrance toute notre communauté.
je vais lire régulièrement excel-downloads sur le web,
j'aimerais bien trouver la façon de l'intégrer au Thunderbird.
isabelle

Bonjour Isabelle,
Si tu es inscrit à ce forum, tu peux toujours leur poser la question.
Perso, je crois que ce n'est pas possible. Un raccourci sur le bureau
vers ce site est très convivial!
Bonne journée,
MichD
Avatar
Patrick
Tu n'y interviens pas , Denis ou alors sous un pseudo autre ?
:)
Le 12-06-16 16:07, MichD a écrit :
*** Si cela te tente de discuter formules ou procédures, je te suggère
d'adhérer au forum suivant. Plusieurs anciens membres du MPFE sont
devenus assidus à ce groupe dont Modeste. Un forum très dynamique!
http://www.excel-downloads.com/forum/forum-excel/
1 2 3