Initialisation Workbook

turnoff

XLDnaute Nouveau
Bonsoir à toutes et à tous.
Je n'arrive pas à me sortir d'une incompatibilité entre excel 2007 (OS XP) et Ecl2016(OS W7)

Voici le code d'initialisation à l'ouverture du classeur:
Private Sub Workbook_Open()
ThisWorkbooks.Worksheets("Accueil").Activate
Range("A1") = "Operateur " & Environ("username")
FormCom.Show
End Sub
Ca tourne très bien sur un ancien poste [excel 2007 (OS XP)]; pour réformer ce poste et passer sur un autre [Ecl2016(OS W7)] impossible ça bug ,tjrs.

Y a t-il une (bonne) solution?
Merci
 

Jacky67

XLDnaute Barbatruc
Bonsoir à toutes et à tous.
Je n'arrive pas à me sortir d'une incompatibilité entre excel 2007 (OS XP) et Ecl2016(OS W7)

Voici le code d'initialisation à l'ouverture du classeur:
Private Sub Workbook_Open()
ThisWorkbooks.Worksheets("Accueil").Activate
Range("A1") = "Operateur " & Environ("username")
FormCom.Show
End Sub
Ca tourne très bien sur un ancien poste [excel 2007 (OS XP)]; pour réformer ce poste et passer sur un autre [Ecl2016(OS W7)] impossible ça bug ,tjrs.

Y a t-il une (bonne) solution?
Merci



Bonjour,
Pour commencer, une piste…..
Enlever le "s" à ThisWorkbooks
 

turnoff

XLDnaute Nouveau
Bonsoir, et merci.
Veuillez m'excuser de n'avoir pas répondu + tôt, j'étais grippé.
Mon code lui l'est toujours.

Si vous avez encore un peu de patience , sur le poste W7/xcell2016
Si j'enlève le "s"
Le message est le suivant:
Workbook
erreur de compilation, Sub ou fonction non définie!

Si je mets le "s", le message d'erreur est le suivant:
Workbooks("Four2_CFuji.xlsm").Worksheets("Accueil").Activate
erreur n°9, L'indice n'appartient pas à la sélection.
!
 

Dranreb

XLDnaute Barbatruc
Bonsoir
Mais pourquoi voudriez vous enlevez le "s" en fin du nom de la collection Workbooks de l'application ?
Ça n'a rien à voir avec l'expression ThisWorkbook qui représente le classeur portant la macro, et ne prend pas, elle, en effet, de "s" à la fin.
Là, avec le nom de la collection correctement orthographié, soit il n'existe pas de classeur "Four2_CFuji.xlsm" ouvert soit il en existe un mais qui ne porte pas de feuille nommée "Accueil" (sa collection Worksheets ne contient pas d'objet Worksheet représentant une telle feuille).
 
Dernière édition:

turnoff

XLDnaute Nouveau
Bonsoir Bernard et merci, quel temps à Belfort?
Bon encore une gaffe, j'avais effectivement renommé le fichier (avec un indice) après m'être aperçu qu'il y avait erreur lors de plusieurs tentatives de résolution (Pas sérieux!)
Avec le bon nom de fichier, et, cette feuille existe bel et bien, le message est:
Workbooks("Four2_CFuji.xlsm").Worksheets("Accueil").Activate
Erreur d'execution 57121
Erreur définie par l'application ou par l'objet

Sous excel2007 /XP il n'y a aucune erreur!

J'ai fait un peu plus attention cette fois, dumoins dans mes possibilités
 

Dranreb

XLDnaute Barbatruc
Moi j'évite les Activate et les Select dans les macros. Ils ne servent à rien en général. En plus ça plante si la feuille qu'on veut activer n'est pas une feuille du classeur actif. Je préfere affecter par Set l'expression à une variable objet As Worksheet. Cette variable peut avantageusement remplacer ActiveSheet dans la suite du code.
Je ne prête guère attention au temps en hiver. C'est maussade en général …
 

Statistiques des forums

Discussions
315 098
Messages
2 116 189
Membres
112 679
dernier inscrit
Yupanki