Objet OLE - Equation 3.0

Objet OLE - Equation 3.0 - VB/VBA/VBS - Programmation

Marsh Posté le 16-12-2008 à 17:46:35    

Bonjour,
 
Je travaille sous access et sur mes fiches produits, je dois mettre des formules mathématiques. J'utilise donc Equation3.0 mais le soucis c'est que je n'arrive pas à le faire fonctionner comme un champ de mon formulaire (bound ou unbound, j'ai tout essayé). Néanmoins je sais que c'est possible car je rentre les formules avec cet OLE directement dans la table. Quelqu'un aurait-il le code pour insérer Equation3 dans le champ (le plus dur pour moi) et l'ouvrir.
 
Merci


---------------
Il est souvent nécessaire d'entreprendre pour espérer et de persévérer pour réussir.
Reply

Marsh Posté le 16-12-2008 à 17:46:35   

Reply

Marsh Posté le 16-12-2008 à 23:26:05    

Bonsoir
 
Ton controle 'cadre d'objet dépendant' a bien comme source ton champ objet ole ? Et si tu fais un click droit sur ce controle là, rien ne se passe ??
 
Cordialement


---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 17-12-2008 à 11:01:00    

Sur mon formulaire, l'objet est bien créé et si je clique je peux écrire l'équation. Le problème, c'est que cette equation ne s'enregistre nul part alors qu'en row source j'ai bien le champ de ma table. J'ai également essayé de faire clic droit/insérer equation et d'écrire mais c'est la même chose...
Any Idea? merci


---------------
Il est souvent nécessaire d'entreprendre pour espérer et de persévérer pour réussir.
Reply

Marsh Posté le 17-12-2008 à 11:03:06    

A noter également!
Lorsque j'arrive sur le formulaire une msgbox me dit "Access can't read the OLE Object because communication was interrupted".


---------------
Il est souvent nécessaire d'entreprendre pour espérer et de persévérer pour réussir.
Reply

Marsh Posté le 17-12-2008 à 11:45:41    

Bonjour
 
Je viens de faire l'essai, je n'ai aucun souci pour integrer des equations dans Access avec Equation 3.0
 
J'ai créé une table avec un champ de type Objet OLE. (et c'est tout)
Je créé ensuite un formulaire, je prends mon champ Objet OLE et je le positionne sur le formulaire en mode création.
J'affiche mon formulaire en mode formulaire, click droit sur le controle objet ole, inserer objet, microsoft editeur d'equations 3.0, je saisi ma formule, je vais sur l'enregistrement suivant.
Si je reviens sur mon enregistrement precedent, j'ai bien mon equation.
Idem si je ferme et réouvre la base.
 
Peux tu m'envoyer la base que je zieute ?
 
Cordialement


---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 17-12-2008 à 14:21:40    

merce dje69r, effectivement ca fonctionne, je ne sais pas pourquoi je n'y arrivais pas... Maintenant est-il possible de définir automatiquement quel objet OLE on veut plutôt que de faire clic droit/insérer/etc. Vu que la base sera utilisée par beaucoup de monde, plus la procédure est simple et mieux c'est! Est-il possible par un bout de code d'insérer automatiquement l'appli Equation dans l'objet OLE? Merci


---------------
Il est souvent nécessaire d'entreprendre pour espérer et de persévérer pour réussir.
Reply

Marsh Posté le 17-12-2008 à 14:56:25    

Je zieute ca et te tiens au jus


Message édité par SuppotDeSaTante le 17-12-2008 à 16:42:19

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 17-12-2008 à 16:42:24    


Je pars du principe que :
- Tu as un bouton nommé "BtnEq" sur ton formulaire.
- C'est sur ce bouton qu'on va cliquer pour venir saisir une equation dans le controle ole
- Que ce controle OLE se nomme "Eq"
- Que ce controle est accessible en modification, donc les propriétés Locked/Verrouillé = False/Non et Enable/Activé = True/Oui
 
Sur Click du bouton, tu mets ce bout de code :
 

Citation :

Private Sub BtnEq_Click()
    Eq.Action = acOLECreateEmbed
    Eq.Class = "Equation.3"
    Eq.OLETypeAllowed = acOLEEither
    Eq.Action = acOLEActivate
End Sub


 
Quand tu cliqueras sur le bouton, il va inserer dans le controle ole une equation, et te faire apparaitre la barre pour la saisir.
C'est bien entendu à adapter avec le nom des controles de ton formulaire.
 
Cordialement


---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 17-12-2008 à 17:18:45    

hello. Premièrement merci de prendre le temps de m'aider.
Pour ce qui concerne cette procédure, la class est inconnue. J'ai cherché une bibliotheque à activer mais je n'ai rien trouvé... C'est bien ""Equation.3"? N'y a -t-il pas autre chose à rajouter du genre:
 
Eq.OLEClass = "Microsoft Equation Editor 3.0"
 
Je propose, hein, je ne sais pas...


---------------
Il est souvent nécessaire d'entreprendre pour espérer et de persévérer pour réussir.
Reply

Marsh Posté le 17-12-2008 à 21:24:53    

En mode creation sur ton formulaire :
Insertion, Objet, Microsoft equation.
 
Il va te mettre un cadre d'objet indépendant sur le formulaire normalement. Vas dans les propriétés de ce controle, et regarde la class.
 
Non, de mémoire oleclass c'est pour les objets independants, toi il est dependant.
 
Quand tu dis "la classe est inconnue", tu as un message d'erreur ? Si oui lequel ?


Message édité par SuppotDeSaTante le 17-12-2008 à 21:26:36

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 17-12-2008 à 21:24:53   

Reply

Marsh Posté le 18-12-2008 à 10:05:33    

Nickel ça fonctionne. En fait la classe n'était pas définie dans mon cadre objet d'où l'erreur quand j'appuyais sur le bouton. Merci dje69r


---------------
Il est souvent nécessaire d'entreprendre pour espérer et de persévérer pour réussir.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed