Calendar ocx Custom Control Properties

Fermé
eselene Messages postés 5 Date d'inscription samedi 23 mars 2013 Statut Membre Dernière intervention 24 mars 2013 - 23 mars 2013 à 08:29
eselene Messages postés 5 Date d'inscription samedi 23 mars 2013 Statut Membre Dernière intervention 24 mars 2013 - 24 mars 2013 à 13:11
Bonjour,
J'ai migré une appli access 97 à 2007. Dans l'appli l'utilisateur final peut changer les propriétés du calendrier (mscal.ocx) à partir d'un menu
Je n'ai pas trouvé le menu mais je peut l'appeller avec :
DoCmd.DoMenuItem acFormBar, acEditMenu, 14, 0, acMenuVer70
Mais j'ai l'erreur: "La commande ou l'action VerbeDéfautObjetOLE n'est pas disponible pour l'instant"
J'ai trouvé la commande "acccViewCustomControlProperties" dans le fichier "mscal.cnt" mais j'arrive pas à l'appeler
Est ce que vous avez une idée? svp
A voir également:

3 réponses

Bonjour,
Deux choses me posent problème que je n'arrive pas à trouver dans le didacticiel.
1) les 2 constantes "14" et "0" dans ton expression "DoCmd." , que représentent-elles ou que sont-elles censées représenter?
2) N'y aurait-il pas une faute dans "acccViewCustomControlProperties"?
3 "c" de suite me parraissent bien nombreux!!!
3) Suis très étonné de l'expression "VerbeDéfautObjetOLE " qui n'est manifestement pas du VBA !
A plus tard.
0
eselene Messages postés 5 Date d'inscription samedi 23 mars 2013 Statut Membre Dernière intervention 24 mars 2013
23 mars 2013 à 12:00
Merci pour ton aide...
1) Dans l'appli il y a un menu customisé (Fichier, Edit, Enregistrement).
La constante 14 correspond à l'ordre dans le menu Edit (acEditMenu) dans à l'appli, c.à.d. Edit/"Calendrier"
La constante 0 correspond au premier sub item de l'option "Calendrier" => Propriétés
2) Voici l'extrait du fichier mscal.cnt:
« :Base mscal.hlp>ref
:Title Référence Contrôle Calendrier
:Index Référence Contrôle Calendrier=mscal.hlp
1 Référence Contrôle Calendrier
2 Contrôle Calendrier=ccsumCalendarDescription@mscal.hlp>Langref
2 Référence Contrôles ActiveX
3 Informations sur les propriétés, les méthodes et les événements d'un contrôl...=acccUsingCustomControlLanguageElements@acvba80.hlp>Langref
3 Éléments du langage Microsoft Access qui s'appliquent aux contrôles ActiveX=acccAccessLanguageElements@acvba80.hlp>Langref
3 Boîte de dialogue des propriétés personnalisée du contrôle ActiveX=acccViewCustomControlProperties@acvba80.hlp>Langref
3 Afficher la boîte À propos d'un contrôle ActiveX=acccViewCustomControlAboutBox@acvba80.hlp>Langref"
»
3) Oui je pense que c'est une expression qui viens du control activeX (extension OCX)
0
Comme tu dois savoir le contrôle ActiveX "Calendar" n'existe plus dans Access 2007. Le ".dll " n'est plus intégré dans la bibliothèque, ou peut-être en allant le chercher soi-même dans les références.
En recherchant dans une de mes anciennes bases j'ai trouvé comme nom du calendrier: Propriétés du contrôle "Données"
Application OLE = "Calendrier"
Classe Objet = "MSCAL.Calendar.7"
C'est tout ce que je peux dire pour t'aider pour le moment, mais je crois que tu aurais intérêt à écrire tes propriétés en toutes lettres plutôt qu'en valeurs numériques.

Sinon, Access 2007 propose un calendrier à côté de chacun des champs et contrôles Date, alors n'aurais-tu pas intérêt à laisser tomber ce calendrier ActiveX pour n'utiliser que le nouveau?
Merci tout de même pour me tenir au courant de ta solution.

Par ailleurs j'aurais peut-être une question à te poser à propos d'une "vieille" BdD construite avec 1997 et 2000 que je peux ouvrir sans problème avec 2003 mais pas du tout avec 2010 que j'utilise actuellement sur ma machine personnelle.
Bonne suite
0
eselene Messages postés 5 Date d'inscription samedi 23 mars 2013 Statut Membre Dernière intervention 24 mars 2013
24 mars 2013 à 08:48
Une solution est d'importer tous les objets(forms, tables, etats....) à partir de ton ancienne base access
Parfois Access permet de faire de copy coller des objets
0
eselene Messages postés 5 Date d'inscription samedi 23 mars 2013 Statut Membre Dernière intervention 24 mars 2013
24 mars 2013 à 08:50
Autre solution est d'ouvrir ta base ancienne en 2007, puis sauvegarder cette base en 2007 pour l'ouvrir en 2010
0
Bonjour,
Merci pour ton idée.
En fait j'avais déjà eu cette idée mais qui ne marche pas.
Cela dit je vais tout de même essayer à nouveau mais en essayant type d'objets par types d'objets (Les tables, puis les requêtes, les formulaires, etc) et essayer de repérer celui qui bloque.
Encore merci.
Et où en es-tu avec ton calendrier?
0
eselene Messages postés 5 Date d'inscription samedi 23 mars 2013 Statut Membre Dernière intervention 24 mars 2013
Modifié par eselene le 24/03/2013 à 13:12
pareil.. Demain je vais chercher la dll dans l'ordi d'Access 97 pour la copier dans l'ordi d'access 2007, peut être si j'appel l'item du menu "Calendrier/propriétés" ça va marcher.
Merci à toi
0