Erreur 1004 : Fiabilité

GrandGarfield Messages postés 9 Date d'inscription samedi 8 juillet 2006 Statut Membre Dernière intervention 21 février 2008 - 31 août 2006 à 01:16
GrandGarfield Messages postés 9 Date d'inscription samedi 8 juillet 2006 Statut Membre Dernière intervention 21 février 2008 - 31 août 2006 à 20:38
Bonjour à tous,
désolé si la question a déjà été posée, mais j'ai un souci de dernière minute avec une appli que je dois fournir à mon boss vendredi.
J'ai tout programmé en utilisant excel 2000 et tout foncionne impeccablemment
Mais en lançant l'application sur excel 2003 j'ai deux imprevus facheux. ( l'utilisateur aura surement excel 2003 ... )

   1) Dans un première fonction j'ouvre un fichier excel, je stock des valeurs prises dans ce fichiers dans des variables et je le ferme sans l'avoir modifié.
Cette opération est répétée plusieurs fois mais dans excel 2003 avant chaque fermeture j'ai le message qui me demande si je veux enregistrer les modifications du fichier ouvert ( alors qu'il n'a pas été modifié à priori ) cela ne se produisait pas dans excel2000. C'est particulièrement génant car cela demande l'action de l'utilisateur un grand nombre de fois. Comment y remedier ?

   2) Plus embetant encore : Dans une autre fonction je fait créer un bouton de commande sur une feuille ( avec un AddOLEObject ). Ensuite je fais mettre le code correspondant à ce bouton dans le code de la feuille en question. Cette opération se déroulait sans problème dans excel2000 mais excel 2003 refuse et me balance une erreur 1004 en me disant qu'il y a un problème de fiabilité.
Du coup j'ai bien mon bouton mais il ne sert à rien puisque le code n'a pas été écrit.
Comment y remedier ?

Merci d'avance pour toute aide

Garfield.

5 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
31 août 2006 à 01:23
salut,
pour ton 1, en VB6 (désolé) le code ObjXLS.DisplayAlerts = 
False permet d'y remédier.

(çà répond même pas à moitié mais j'suis au max )
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
31 août 2006 à 01:39
Salut,

Pour ton 1, la méthode de PCPT fonctionne comme ceci :
Application.DisplayAlerts = False
mais perso, je te conseille une autre méthode (sinon, t'es obligé de la remettre à true plus loin dans ton code) :
ThisWorkBook.Saved = True
(fait comme s'il a été enregistré, bien que non, et cela t'évite le message)

Pour ton 2, dans le menu outil , macro, sécurité, choisi le 2ème onglet, et coche les deux checkbox.

@++

<hr size ="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
cs_carvals Messages postés 50 Date d'inscription lundi 20 novembre 2000 Statut Membre Dernière intervention 23 janvier 2008
31 août 2006 à 11:15
la solution de notre chevalier est bonne pour le 1 mais pour ton second pb j'ai une alternative surtout si c'est une appli pro.


Tu dois creer une signature elctronique qui t'evitera le probleme de fiabilite et surtout le message "Macro: enable, disable etc" c'est mieux pr le user. pour cela va dans


c:\Program files\Microsoft office\office et lance le prog selfcert.exe. tu te cres une signature digitale.


ensuite dans va ds l'editeur VBA puis TOOLS/DIGITAL SIGNATURE et tu selectionnes la tienne ou celle de ta boite.


De cette facon le client aura une seule fois a clicke sur enable macros (qu'il n'oublie pas de cocher la case qui dit de ne plus poser la question pour cette signature) et voila plus de pb de fiabilite.

carvals
0
cs_bipou Messages postés 61 Date d'inscription mercredi 14 janvier 2004 Statut Membre Dernière intervention 14 septembre 2006
31 août 2006 à 11:27
ou encore pour le 1 :
lorsque tu ferme

activeworkbook.Close savechanges:=false
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
GrandGarfield Messages postés 9 Date d'inscription samedi 8 juillet 2006 Statut Membre Dernière intervention 21 février 2008
31 août 2006 à 20:38
Merci beaucoup, vos réponses marchent parfaitement, je viens juste de voir la réponse de signature electronique ça va peut-être être juste de pour voir ça demain mais si j'ai le temps j'essayerai.
 
J'ai testé sur l'ordi de mon patron ça marche parfaitement avec les modifs que vous m'avez proposé.
Et le fait qu'il ait coché les cases dans le menu sécurité des macros est conservé même après fermeture d'excel donc comme il lui viendra surement pas à l'idée d'aller toucher ce menu ça devrait aller mais je vais quand même tenter la signature ça me parait plus sur.

Cela dit autre problème completement innatendu qui est survenu quand je faisais ma démo :
le programme ouvre un document powerpoint copie une plage de donnée ( un tableau ) dans excel et la colle dans une diapo de la présentation ( ça me fait un objet feuille excel dans la diapo ). Sur ma version ( windows 2000 , excel 2000, ppt 2000 )  mon tableau arrivait centré sur la diapo mais là sur son ordi le tableau dépassait considérablement la diapo et apperement il n'etait pas du tout evident de la redimensionner correctement. ( à noter que la présentation est enregistrée au format ppt 95-97 car VBA ne voulait pas m'ouvrir d'autre type de présentation à partir d'excel )
Je pense que je dois pouvoir m'en tirer en imposant les dimensions de l'objet une fois inséré mais bon si y'a une option pour le faire direct je suis preneur ...

Merci pour votre aide
0
Rejoignez-nous