begin process at 2012 02 15 14:18:16
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

AddIn ou supplément COM pour Word 2000


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

AddIn ou supplément COM pour Word 2000

lundi 10 février 2003 à 10:49:41 | AddIn ou supplément COM pour Word 2000

Xavier

Bonjour,

je cherche à écrire un addin pour word2000. Je me suis
inspiré des différents articles publiés sur MSDN pour
écrire un code efficace. Cependant, en dépit des
déclarations (librairie Office version 9.0, Word version
9.0, AddIn...) je rencontre un "petit" problème que je
soumets à votre sagacité.

Voici tout d'abord le listing du code incriminé :

Option Explicit

Dim oXL As Object
Dim MyAddin As Object

Dim WithEvents MyButton As Office.CommandBarButton
Dim WithEvents MyControl As Office.CommandBarComboBox

Private Sub AddinInstance_OnConnection(ByVal
Application As Object, _
ByVal ConnectMode As
AddInDesignerObjects.ext_ConnectMode, _
ByVal AddInInst As Object, custom() As Variant)
On Error Resume Next
' Initialise l'objet MyAddin
' Objectif : récupération de l'ID de l'instance pour
la procédure
' AddinInstance_OnStartupComplete
Set MyAddin = AddInInst
End Sub

Private Sub AddinInstance_OnDisconnection(ByVal
RemoveMode As _
AddInDesignerObjects.ext_DisconnectMode, custom() As
Variant)
On Error Resume Next
' Déconnexion de l'Add-In


MyControl.Delete
MyButton.Delete
Set MyButton = Nothing
Set MyControl = Nothing
Set mybar = Nothing
Set oXL = Nothing
Set MyAddin = Nothing
End Sub




Private Sub AddinInstance_OnStartupComplete(custom() As
Variant)
On Error Resume Next

' Création des objets propres à l'Addin
' Après le chargement complet de l'application hôte

' Déclaration des variables & objets
' Booléen indicateur de présence de la barre de commande
Dim BarreTrouve As Boolean
' Objets barre
Dim cbar As Object
Dim mybar As Object
' Adresse dynamique de l'instance de l'addin
Dim aAddin As String

'Contrôle de type bouton
Dim MyButton As Object
'Contrôle de type ComboBox
Dim MyControl As Object

aAddin = MyAddin.ProgId
aAddin = "!<" & aAddin & ">"



' Utilise la méthode last binding
Set oXL = GetObject(, "Word.Application")


'Place l 'indicateur de test de présence à faux
BarreTrouve = False

' Cherche s'il existe déjà une barre d'outil nommée
MaBarre

For Each cbar In oXL.CommandBars
If cbar.Name = "MaBarre" Then
' Il existe une barre de commande nommée
MaBarre
BarreTrouve = True
End If
Next

If BarreTrouve Then
GoTo Apres_SetBarre
End If


Set mybar = oXL.CommandBars _
.Add(Name:="MaBarre", Position:=msoBarTop, _
Temporary:=True)
mybar.Visible = True

Set MyButton = oXL.CommandBars
("MaBarre").Controls.Add(Type:=msoControlButton,
Temporary:=True)

With MyButton
.Caption = "ActionMyButton"
.Style = msoButtonIconAndCaption
' Initialise Info bulle Déboggage
.ToolTipText = "ActionMyButton " & aAddin
.Visible = True
.OnAction = aAddin
End With

Set MyControl = oXL.CommandBars
("MaBarre").Controls.Add(Type:=msoControlComboBox,
Temporary:=True)


With MyControl
.AddItem Text:="Texte 1", Index:=1
.AddItem Text:="Texte 2", Index:=2
.AddItem Text:="Texte 3", Index:=3
.AddItem Text:="Texte 4", Index:=4
.AddItem Text:="Texte 5", Index:=5
.AddItem Text:="Texte 6", Index:=6
.AddItem Text:="Texte 7", Index:=7
.AddItem Text:="Texte 8", Index:=8
' Initialise Infobulle Déboggage
.ToolTipText = "MonComboBox " & aAddin
.DropDownLines = 5
.DropDownWidth = -1
.ListHeaderCount = 0
.Width = 300
.Visible = True
.OnAction = aAddin
End With

Apres_SetBarre:
' Destruction de l'objet cbar devenu inutile
Set cbar = Nothing

End Sub

Private Sub MyButton_Click(ByVal Ctrl As
Office.CommandBarButton, CancelDefault As Boolean)

MsgBox ("Click sur MyButton")

End Sub

Private Sub MyControl_Change(ByVal Ctrl As
Office.CommandBarComboBox)
Dim ValRenvoye As Variant
Dim StrRenvoye As String
MsgBox ("Selection dans MaComboBox modifiée")
ValRenvoye = oXL.mybar.MyControl.Index
StrRenvoye = oXL.mybar.MyControl.Value
MsgBox ("-> " & Str(ValRenvoye) & " : " & StrRenvoye)

End Sub

Le problème rencontré est le suivant:
Un click sur le MyButton ne déclenche aucune action.
Une sélection dans MyControl retourne invariablement le
message d'erreur suivant : Macro non trouvée ou paramètres
de sécurité trop élevés.

Cependant :

- l'Addin est à priori correctement enregistré dans la
base de registre;
- les infobulles de déboggage renvoie un ID de type
MonAddIn.Connect;
- l'Addin est visible au travers de l'item supplément COM
du menu Outils;
- les paramètres de sécurité sont configurés de façon
minimale : exécution de tous les codes macros.


mercredi 23 février 2005 à 16:53:35 | Re : AddIn ou supplément COM pour Word 2000

flamy51

Bonjour Xavier

J'aurai voulu savoir si vous aviez trouvé une solution à votre problème, et si oui, quelle solution.
En effet, j'ai le même type de souci.
J'ai un addin VB.net qui fonctionne très bien sous Word XP et 2003.
Par contre, sous Word 2000, certains boutons de l'addin, suite à une opération de fusion de données dans un modèle effectuée par l'addin, ne répondent plus du tout aux événement.
Mon opération de fusion apparemment perd les événement de l'addin sous Word 2000, je ne comprends pas pourquoi.

Merci d'avance pour votre réponse.
jeudi 5 mai 2005 à 00:27:33 | Re : AddIn ou supplément COM pour Word 2000

Xavier

Bonjour Flamy,

Non désolé, je n'ai toujours pas trouvé de solution... mais il est vrai que j'ai également eu d'autres chats à fouetter.
Mais promis, si je trouve une solution, je la poste immédiatement.



Cette discussion est classée dans : set, end, oxl, mycontrol, mybutton


Répondre à ce message

Sujets en rapport avec ce message

Problème d'enregistrement dans une tabme ACCESS [ par isaca ] Bonjour je travaille sous VB6 et je n'arrive pas à inserrer un enregistrement dans ma table.Voici mon code:Function AddNameAbs(StrLast As String)'Stop Comment ouvrir un classeur excel dans fenetre VB 6 ? [ par jfmamj ] Je sais ouvrir le classeur et modifiant des cellules, mais excel reste indépendant de vb. C.a.d. si on ferme excel il faudrait revenir au pgm VB.Comme Aide à la programation [ par Peopletjp ] Salut à tous,Je suis débutant et je possède VB6, WORD 2000 et WIN 98. Je cherche désespérément à créer une DLL COM qui me permettra d'insérer un cadre OOOOhhh secours!!! (je déteste Outlook...) [ par solar01 ] Je travaille actuellement dans une entreprise qui utilise OUTLOOK 2000. Chaque employé dispose d'un accès à une boite principale et d'un autre accès à DirectDraw [ par fragmatyc ] Bon je veux faire bouger un bonhomme avec directdraw:sa marche povoici mon code trouver lerreur:Module:Public DX As New DirectX7Public DD As DirectD ouverture et fermeture excel [ par cpit ] Bonjour a tous,Voici mon appli qui utilise excel. Si j'imprime une fois avec mon appli je peux utilise excel et mon appli sans probleme. Mais si j'ouv Modifier un contact avec Outlook. [ par Snowblad ] Bonjour, j'ai une question pour vous. Avec le code qui suit, j'essaie de modifier le champs AssistantName. Cependant, il n'écrit rien dans ce dernier. get, end get | et set, end set [ par ludovicanceaux ] Salut à tous, j'aurai voulu savoir en fait ce que voulai dire les mot get, end get | et set, end set ATTENTION C'EST EN VB.NETMerci d'avance Création d'attributs sur controle [ par Emcy ] Bonjours, j'ai créer un composant à partir du controle Label. Je voudrais ajouter les propriétés Grid.X et Grid.YLe code ci-dessous fonctionne (j'arri code menu fait avec direct draw [ par DarklordBioopo ] bonjour,je viens de realiser mon premier code en direct draw,et j'aimerais que qqun le regarde et me dise coment l'ameliorer.Public bRunning As Boolea


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,791 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales