Ga naar inhoud

ActiveX en VBA


Aanbevolen berichten

Ik ben aan het experimenteren met het aanroepen van (in wezen een onderdeel van) een applicatie (geen MS applicatie overigens) vanuit een Word document. Met behulp van ActiveX gaat dat op zich prima. Ik vraag mij alleen af of dat ook mogelijk is zonder dat de desbetreffende ActiveX-control (heet dat zo?) al vooraf in dat document gevoegd is. Ik sluit overigens niet uit dat ik in de ogen van de onbevangen lezers nogal een omweg bewandel - maar ik ben dan ook slechts bij toeval gestuit op deze oplossing. Nu probeer ik deze oplossing met name wat beter te begrijpen.
Link naar reactie
Dit wordt een lang verhaal. Waar ik mee aan het experimenteren ben is het aanroepen van Crystal Reports vanuit MS Word. Dat doe ik nu met behulp van een ActiveXbesturingselement. De gebruiker van het desbetreffende Word document krijgt dan uiteindelijk een scherm te zien met een printvoorbeeld van een rapport. Dat rapport kan hij of zij dan bekijken, doorzoeken, afdrukken etc. Op dat printvoorbeeldscherm en op de inhoud van dat rapport kan ik via VBA (naar mijn idee vooralsnog voldoende) invloed uitoefenen. Nu viel het mij op dat je het ActiveXbesturingselement (de .ocx dus) kennelijk in het Word document moet plaatsen. De vraag is of dat erg is, maar in elk geval probeer ik om die stap te vermijden. Uiteindelijk is mij dat min of meer gelukt door het .ocx simpelweg te verwijderen uit het Word document waarmee ik aan het experimenteren was, maar het voorbeeldscherm verdween toen - in de situatie waarin ik uiteindelijk terecht kwam - steeds vanzelf nadat het printvoorbeeld afgerond was! (Als het voorbeeldscherm al tevoorschijn kwam, de resultaten waren nogal wisselend). Maar dan is het natuuurlijk niet mogelijk om te zoeken, bekijken en eventueel af te drukken. Enfin, mijn vraag komt er dus op neer of je een .ocx altijd in (in dit geval) een Word document moet plaatsen, of dat dat niet nodig is (en ik dus kennelijk nog niet helemaal in de vingers heb hoe je er dan mee moet werken). Voor de goede orde: ik sluit bepaald niet uit dat het plaasen van een .ocx in een Word document niet zo zinvol is, maar ik ben dan ook met name bezig te doorgronden hoe je met zo'n .ocx om moet en kan gaan.
Link naar reactie
Welke Word-versie heb je? Minstens 97, hoop ik, anders slaat mijn antwoord nergens op :wink:. Als je een OCX in een Word (of ander Office onderdeel) document plaatst, is er een gerede kans dat er een module is aangemaakt die ervoor zorgt dat de control functioneel wordt. Maak 't jezelf makkelijk, en open de VBA editor (ALT F11). Hirein staan de macro-templates, zoals normal.dot, maar als het goed is ook minstens één .bas bestand (dus een VB module). En je kunt hierin ook forms plaatsen, waar de ocx weer in gebruikt kan worden. Kijk eens bij MickeySoft's MSDN (msdn.microsoft.com) en zoek op Word Automation).
Link naar reactie
Ik had - in mijn eigen woorden - inderdaad niet door hoe je met een .ocx moet werken. Het komt er namelijk op neer dat ik het ActiveX-object wel in het document had geplaatst maar vervolgens in VBA in wezen algemene Crystal Reports instructies opgaf in plaats van instructies die eigenschappen en methoden van de .ocx betroffen. De .ocx zal in het document waarschijnlijk lekker hebben zitten niksen. Goed beschouwd zuiver toeval dat ik überhaupt een reactie kreeg op mijn algemene commando's. Enfin, toch bedankt voor de reacties, die hebben mij wel kleine duwtjes in de goede richting gegeven.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...