Ako používať OLE automatizácie v programe Visio

Preklady článku Preklady článku
ID článku: 309603 - Zobraziť produkty, ktorých sa tento článok týka.
Rozbaliť všetko | Zbaliť všetko

Na tejto stránke

ÚVOD

Tento článok obsahuje informácie o používaní Microsoft Visual Basic alebo Microsoft Visual Basic for Applications (VBA) na automatizáciu Microsoft Office Visio2from iného Microsoft Program balíka Office.

Spoločnosť Microsoft poskytuje príklady programovacieho základňa, bez záruky buď vyjadrené alebo implicitné. To zahŕňa, ale neobmedzuje sa na implicitných záruk obchodovateľnosti alebo vhodnosti na konkrétny účel. Tento článok predpokladá, že ste oboznámení s plánovaním jazyk, ktorý predvádzaný a nástroje, ktoré sa používajú na vytvorenie a ladenie procedúr. Pracovníci technickej podpory spoločnosti Microsoft môžu pomôcť vysvetliť funkčnosť osobitného konania, ale bude nie úpravu týchto Príklady poskytovať pridanú funkčnosť alebo výstavbe postupy na splnenie vášho špecifické požiadavky.

Prehľad automatizácie

Automatizácia (nazývané aj OLE automatizácie) v jazyku Visual Basic je proces kontrolovania jeden program z iný program alebo nástroj vonkajších rozvoja. Môžete automatizovať niektorý program že obsahuje Visual Basic Objektový model. Objektový model je hierarchický kolekcia programu objekty, ktoré sú k dispozícii alebo vystavené Visual Basic.

Napríklad, objektový model pre Microsoft Visio obsahuje objekty, ako:
  • Žiadosť/globálny objekt
  • Objekt dokumentu
  • Page object
  • Nadradený objekt
  • Výber objektu
  • Tvar objektu
  • Okno objekt
Každý z týchto objektov má jedinečnú sadu metód a vlastnosti, ktoré sú potrebné na s nimi pracovať v programe Visual Basic. Napríklad, Tvar objektu môže predstavovať ľubovoľný objekt nakreslený stránke Visio, ktoré môžete vyberte pomocou ukazovateľa. Preto tvar objektu môže byť tvaru, skupiny, Sprievodca, ovládací prvok alebo objekt z iného programu, ktorý je prepojený, vložené, alebo dovezená do kresbu z aplikácie Visio.

Začíname

Ukážky kódu v tomto článku preukázať ako ovládať Visio z programu Microsoft Office 2007, Microsoft Office 2003, Microsoft Office 2002, Microsoft Visual Basic 6.0, alebo z ľubovoľného programu, ktorý zahŕňa rozvoj jazyka Visual Basic nástroj. Na automatizáciu Visio, postupujte podľa týchto štyroch hlavných krokov:
  1. Pridať odkaz na Visio Type Library.
  2. Deklaráciu premennej ako objekt typu Visio (zvyčajne Visio.Application alebo Visio.Documents).
  3. Metóda GetObject alebo CreateObject priradiť objekt premenná deklarované v kroku 2.
  4. Použite Visio objekt vlastnosti, metódy a dieťa objekty na automatizáciu Visio.

Krok 1: Pridať odkaz na Visio Type Library

Ak chcete pridať odkaz na Visio Type Library pomocou Microsoft Kancelárske aplikácie ako napríklad Microsoft Office XP alebo Office 2003, postupujte podľa týchto kroky:
  1. Access, PowerPoint, Excel alebo Word, ukážte na Makrá na Nástroje menu a potom kliknite na tlačidlo Editor jazyka Visual Basic.
  2. Na Nástroje ponuky, kliknite na tlačidlo Odkazy.

    Poznámka Pridať odkaz pomocou programu Microsoft Visual Basic 6.0, kliknite na Odkazy na Projekt ponuka.
  3. V zozname Dostupné odkazy, kliknutím vyberte jednu z nasledujúcich začiarkavacích políčok v závislosti na verzia Visio, ktorú používate:
    • Visio 2007, kliknite na vybrať Microsoft Visio 12.0 Type Library začiarkavacie políčko.
    • Visio 2003, kliknite na vybrať Microsoft Visio 11.0 Type Library začiarkavacie políčko.
    • Programu Visio 2002, kliknutím vyberte Microsoft Visio 2002 Type Library začiarkavacie políčko.
Keď pridáte odkaz na Microsoft Visio Type Library vaše program môžete k Online Pomocník programu Microsoft Visio a modelu Visio. Pretože odkazy sú ulo?ené v každý projekt, budete musieť pridať Visio Typ knižnice odkaz pre každý Visual Basic alebo VBA projekt, ktorý chcete použite na automatizáciu Visio.

Krok 2: Vyhlásiť premennej objektu

Vyhlásiť premennej objektu Visio rozmerom premenná ako špecifické Visio objekt typu, ako napríklad Visio.Application, Visio.Documents, alebo Visio.Page.

Výslovne vyhlasuje typu objektu sa nazýva včasnú väzbu pretože sa radič pripája aplikácia alebo viaže objekt aplikácie Visio pri kompilácii skôr ako v run-time. To vám umožní prístup k programu Visio automatické zoznamy a kontexte citlivé Pomocník, a umožňuje efektívnejšie spustenie kódu.

Ďalšie informácie o objekt záväzné, kliknite na nasledovné číslo článku zobrazte článok v Microsoft Knowledge Base:
138138Neskoro, ID, skoré záväzné typy možnej v VB pre Apps
Nasledujúci argument Visual Basic vzorky vyhlasuje premenná AppVisio ako objekt typu Visio.Application:

   Dim AppVisio as Visio.Application
				

Krok 3: Nastavenie premennej

Nasledujúcich dvoch metód jazyka Visual Basic môžete použiť na aktiváciu Visio:
  • CreateObject
  • Funkcia GetObject
Hlavný rozdiel je, že CreateObject metóda vytvorí novú inštanciu programu Visio a GetObject metóda používa už spustený inštancia programu Visio. Môžete použiť aj funkcia GetObject na nastavenie premennej objektu na špecifické Visio dokument.

Tieto vzorky tvrdenie sady AppVisio premenná aplikácie Visio pomocou CreateObject Funkcia:
   Dim AppVisio as Visio.Application

   Set AppVisio = CreateObject("Visio.Application")
				
V niektorých prípadoch možno budete chcieť použiť existujúce inštancie programu Visio, ak Visio je už spustená, ale vytvoriť novú inštanciu, ak Visio nie je spustený. Na to urobiť, vytvoriť obslužný program chýb, ktoré používa metódu CreateObject v prípade že GetObject metóda je neúspešná, ako ukazuje táto vzorka kódu:
   Dim AppVisio As Visio.Application

   On Error Resume Next

   Set AppVisio = GetObject(, "visio.application")

   If AppVisio Is Nothing Then
      Set AppVisio = CreateObject("visio.application")
   End If

				
Poznámka Môžete použiť aj funkciu CreateObject vytvoriť Visio inštancia, ktorá je neviditeľná. Napríklad:
Set AppVisio = CreateObject("Visio.InvisibleApp")
				
Potom môžete použiť viditeľné vlastnosť objektu Application na kontrolu či inštancia je viditeľné.

Môžete použiť InvisibleApp objektu s len funkciu CreateObject. Pokusy o využitie s GetObject Funkcia zlyhá. InvisibleApp objekt nie je k dispozícii vo verziách Skôr ako Microsoft Visio 2000 Visio.

Krok 4: Použiť objekty programu Visio, metódy a vlastnosti

Po dokončení kroky 1 až 3, môžete použiť program Visio premennej objektu na automatizáciu Visio.

Nasledovné makro vzorky používa Automatizácia začať Visio, vytvoriť novú kresbu (dokument) založené na základné Diagram Šablóny, kvapky obdĺžnik, pridáva niektoré text a uloží kresby a Ukončí program Visio.
Sub AutoVisio()

   
   Dim AppVisio As Visio.Application  ' Declare an Instance of Visio.
   Dim docsObj As Visio.Documents     ' Documents collection of instance.
   Dim DocObj As Visio.Document       ' Document to work in.
   Dim stnObj As Visio.Document       ' Stencil that contains master.
   Dim mastObj As Visio.Master        ' Master to drop.
   Dim pagsObj As Visio.Pages         ' Pages collection of document.
   Dim pagObj As Visio.Page           ' Page to work in.
   Dim shpObj As Visio.Shape          ' Instance of master on page.

   ' Create an instance of Visio and create a document based on the
   ' Basic Diagram template. It doesn't matter if an instance of
   ' Visio is already running, CreateObject will run a new one.
   Set AppVisio = CreateObject("visio.application")

   Set docsObj = AppVisio.Documents

   ' Create a document based on the Basic Diagram template that
   ' automatically opens the Basic Shapes stencil.
   Set DocObj = docsObj.Add("Basic Diagram.vst")

   Set pagsObj = AppVisio.ActiveDocument.Pages

   ' A new document always has at least one page, whose index in the
   ' Pages collection is 1.
   Set pagObj = pagsObj.Item(1)

   Set stnObj = AppVisio.Documents("Basic Shapes.vss")
   Set mastObj = stnObj.Masters("Rectangle")

   ' Drop the rectangle in the approximate middle of the page.
   ' Coordinates passed with the Drop method are always inches.
   Set shpObj = pagObj.Drop(mastObj, 4.25, 5.5)

   ' Set the text of the rectangle.
   shpObj.Text = "This is some text."

   ' Save the drawing and quit Visio. The message pauses the program
   ' so you can see the Visio drawing before the instance closes.
   DocObj.SaveAs "MyDrawing.vsd"
   MsgBox "Drawing finished!", , "AutoVisio (OLE) Example"

   ' Quit Visio.
   AppVisio.Quit

   ' Clear the variable from memory.
   Set AppVisio = Nothing

End Sub
				

ODKAZY

Microsoft Visio vývojár webových lokalít

Ďalšie informácie o tom, ako automatizovať Visio nasledujúce webovú lokalitu spoločnosti Microsoft:
http://msdn2.Microsoft.com/en-US/Office/aa905478.aspx
Ďalšie informácie o tom, ako rozvíjať programu Microsoft Visio riešenia, navštívte nasledovnú webovú lokalitu spoločnosti Microsoft:
http://msdn2.Microsoft.com/en-us/library/aa217846 (office.10) .aspx

Visio Software Development Kits

Súprava Visio 2002 Software Development Kit, navštívte nasledujúce webovú lokalitu spoločnosti Microsoft:
http://www.Microsoft.com/downloads/details.aspx?FamilyId=d2845e80-6634-4703-9ad9-7e440ede12d7&displaylang=en

Visio 2003 Software Development Kit, navštívte na nasledujúcej webovej lokalite spoločnosti Microsoft:
http://www.Microsoft.com/downloads/details.aspx?FamilyId=557120bd-b0bb-46e7-936a-b8539898d44d&displaylang=en

Diskusné skupiny

Nasledujúce diskusnej skupiny peer-to-peer je k dispozícii, ktoré vám pomôžu komunikovať s ostatnými používateľmi programu Visual Basic pre aplikácie:
Microsoft.public.VB.OLE.automation
Microsoft.public.Visio.Developer.VBA

Pomocník programu Visual Basic

Ďalšie informácie o používaní CreateObject kliknite na funkcie, v editore jazyka Visual Basic Pomocník programu Microsoft Visual Basic na pomoc ponuka, typu funkcia CreateObject v Vyhľadávanie a potom kliknite na Vyhľadávanie Ak chcete zobraziť témy Pomocníka, ktoré sa vrátia.

Pre viac informácie o používaní Funkcia GetObject kliknite na funkcie, v editore jazyka Visual Basic Pomocník programu Microsoft Visual Basic na pomoc ponuka, typu funkcia GetObject v Vyhľadávanie a potom kliknite na Vyhľadávanie Ak chcete zobraziť témy Pomocníka, ktoré sa vrátia.

Vlastnosti

ID článku: 309603 - Posledná kontrola: 1. novembra 2011 - Revízia: 2.0
Informácie v tomto článku sa týkajú nasledujúcich produktov:
  • Microsoft Office Visio Standard 2007
  • Microsoft Office Visio Professional 2007
  • Microsoft Office Visio Professional 2003
  • Microsoft Visio 2002 Standard Edition
  • Microsoft Visio 2002 Professional Edition
Kľúčové slová: 
kbautomation kbprogramming kbvba kbhowto kbmt KB309603 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:309603

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com