Kaip sukurti ir įterpti figūras „PowerPoint“ naudojant VBA?

Prieš kelias dienas norėjau automatizuoti gana kasdienę užduotį – sukurti kai kurias „PowerPoint“ skaidres. Automatizuodami „PowerPoint“ paprastai dirbate su skaidrių ir figūrų rinkiniu. Skaidrės yra gana savaime suprantamos, o formos yra beveik visa kita, įskaitant teksto laukelius, veiksmų mygtukus, medijos objektus, etiketes, paveikslėlius, figūrines išnašas, struktūrines diagramas ir pan. Nors pademonstruosiu PowerPoint technologijas, kai kurios sintaksės iš tikrųjų gana tinka Microsoft Word ir Excel.

Apibendrinant, prieš pradėdami kurti VBA makrokomandas PowerPoint, turite įgalinti kūrimo skirtuką .

Pirmiausia pradėkime automatiškai kurdami pristatymą su kai kuriomis skaidrėmis, kaip parodyta šioje pamokoje: pristatymo kūrimas VBA .

Dabar galime pradėti dirbti su „Shape“. Pirmiausia eikime į priekį ir atidarykime VBA redaktorių paspausdami Alt+ F11. Jei sekėte ankstesnę mokymo programą, modulių sąraše turėtų būti 1 modulis (kaip parodyta toliau).

Darbas su figūromis su VBA

Teksto laukelio pridėjimas naudojant VBA

Pradėsime prie pirmosios pristatymo skaidrės pridėdami vertikalų teksto laukelį. Pridėkite šį kodą prie 1 modulio, tada eikite į priekį ir paspauskite mygtuką Išsaugoti (Ctrl+s) ir paleiskite makrokomandą (paspauskite F5 arba paspauskite Vykdyti antrinę / vartotojo formą).

Sub CreateTextBox()
Set MySlide = ActivePresentation.Slides(2)

    With MySlide.Shapes
        .AddTextbox(Orientation:=msoTextOrientationVertical, _
         Left:=90, Top:=200, Width:=80, _
         Height:=200).TextFrame.TextRange.Text _
        = ("This is my vertical text box")

End With

End Sub

Atminkite, kad naudodami VBA galite gana lengvai pakeisti savo teksto laukelio matmenis. Tokiu atveju pakeisime pirmosios formos dydį antroje skaidrėje, jei reikia, pakeiskite.

Sub ResizeText()
Set MyShape = ActivePresentation.Slides(2).Shapes(1)

'Add your required dimensions as needed below
   With MyShape
         .Width = 200
         .Height = 35

End With
End Sub

Teksto efektai su VBA

Tarkime, kad norime pridėti teksto laukelį prie visų pristatymo skaidrių, šį kartą šiek tiek patrauklesnių. Norėdami tai padaryti, naudosime VBA, kad sukurtume pasirinktinius teksto efektus, kuriuos galėsime įterpti į vieną ar kelias pristatymo skaidres. Pirmiausia peržiūrėsime pristatymo skaidres ir prireikus pridėsime teksto efektą.

Sub SetEffects()

Dim i As Integer

For i = 1 To ActivePresentation.Slides.Count
    ActivePresentation.Slides(i) _
    .Shapes.AddTextEffect msoTextEffect12, "Draft for Review", _
    "Segoe UI", 32, msoTrue, msoTrue, 650, 50
Next

End Sub

Štai rezultatas ;-):

Kaip sukurti ir įterpti figūras „PowerPoint“ naudojant VBA?

Atminkite, kad taip pat galite naudoti paprastą vandens ženklą, kad pasiektumėte šį konkretų rezultatą.

„PowerPoint“ išnašos su VBA

Kitas mūsų pavyzdys bus figūrinių išnašų pridėjimas prie pristatymo. Šiame pavyzdyje antroje skaidrėje pridėsime figūrinę išnašą.

Sub CreateCallout()

ActivePresentation.Slides(2).Shapes.AddCallout(Type:=msoCalloutTwo, Left:=200, Top:=50, _  Width:=300, Height:=100).TextFrame.TextRange.Text = "My Callout"

End Sub

Formos savybių nustatymas

Daugelis formų formatavimo ypatybių nėra nustatytos ypatybėmis, kurios taikomos tiesiogiai  Shape  arba  ShapeRange  objektui. Vietoj to, susiję formos atributai yra sugrupuoti į antrinius objektus, pvz.,  objektą FillFormat  , kuriame yra visos su formos užpildymu susijusios ypatybės, arba objektą  LinkFormat  , kuriame yra visos susietiems OLE objektams būdingos savybės. Norėdami nustatyti formos ypatybes, pirmiausia turite grąžinti objektą, vaizduojantį susijusių formos atributų rinkinį, tada nustatyti grąžinamo objekto ypatybes. Pavyzdžiui, naudojate  ypatybę Fill,  norėdami grąžinti  FillFormat  objektą, tada nustatote  objekto FillFormat  ypatybę  ForeColor  , kad būtų nustatyta nurodytos formos užpildymo priekinio plano spalva, kaip parodyta toliau pateiktame pavyzdyje.

VB

Set myDocument = ActivePresentation.Slides(1)
myDocument.Shapes(1).Fill.ForeColor.RGB = RGB(255, 0, 0)

Ypatybės ar metodo taikymas kelioms formoms vienu metu

Vartotojo sąsajoje yra keletas operacijų, kurias galite atlikti pasirinkę kelias formas; pavyzdžiui, galite pasirinkti kelias figūras ir vienu metu nustatyti visus atskirus jų užpildus. Yra ir kitų operacijų, kurias galite atlikti tik pasirinkę vieną formą; pavyzdžiui, formos tekstą galite redaguoti tik tada, kai pasirinkta viena forma.

„Visual Basic“ yra du būdai, kaip pritaikyti ypatybes ir metodus formų rinkiniui. Šie du būdai leidžia atlikti bet kokią operaciją, kurią galite atlikti su viena figūra su įvairiomis formomis, nepriklausomai nuo to, ar galite atlikti tą pačią operaciją vartotojo sąsajoje, ar ne.

  • Jei operacija veikia su keliomis vartotojo sąsajoje pasirinktomis figūromis, galite atlikti tą pačią operaciją „Visual Basic“, sukūrę  ShapeRange  rinkinį, kuriame yra figūros, su kuriomis norite dirbti, ir pritaikydami atitinkamas ypatybes bei metodus tiesiogiai  ShapeRange  rinkiniui.

  • Jei operacija neveikia su keliomis vartotojo sąsajoje pasirinktomis figūromis, vis tiek galite atlikti operaciją „Visual Basic“, peržiūrėdami „  Shape“  rinkinį arba „  ShapeRange“  rinkinį, kuriame yra figūros, su kuriomis norite dirbti, ir pritaikydami atitinkamas ypatybes. ir metodai atskiriems  Shape  objektams kolekcijoje.

Daugelis ypatybių ir metodų, taikomų  Shape  objektui ir  ShapeRange  rinkiniui, nepavyksta, jei jie taikomi tam tikroms formoms. Pavyzdžiui,  ypatybė TextFrame  nepavyksta, jei ji taikoma formai, kurioje negali būti teksto. Jei nesate tikri, kad kiekvienai  ShapeRange  kolekcijos figūrai gali būti pritaikyta tam tikra ypatybė arba metodas, netaikyti ypatybės ar metodo  ShapeRange  rinkiniui. Jei norite pritaikyti vieną iš šių savybių ar metodų formų rinkiniui, prieš pritaikydami jai ypatybę ar metodą, turite peržiūrėti kolekciją ir išbandyti kiekvieną atskirą formą, kad įsitikintumėte, jog tai tinkamas formos tipas.

Ypatybės arba metodo taikymas ShapeRange kolekcijai

Jei vienu metu vartotojo sąsajoje galite atlikti operaciją su keliomis pasirinktomis figūromis, galite atlikti programinį atitikmenį sukūrę  ShapeRange  rinkinį ir pritaikydami jam atitinkamas ypatybes arba metodus. Toliau pateiktame pavyzdyje sudaromas formų diapazonas, kuriame yra automatinės formos, pavadintos „Didžioji žvaigždė“ ir „Mažoji žvaigždė“, ir joms taikomas gradiento užpildymas bei gradiento užpildymas.myDocument

VB

Set myDocument = ActivePresentation.Slides(1) 
Set myRange = myDocument.Shapes _ 
    .Range(Array("Big Star", "Little Star")) 
myRange.Fill.PresetGradient msoGradientHorizontal, _ 
    1, msoGradientBrass

Toliau pateikiamos bendros gairės, kaip ypatybės ir metodai veikia, kai jie taikomi  ShapeRange  kolekcijai.

  • Metodo taikymas kolekcijai prilygsta metodo taikymui kiekvienam atskiram   tos kolekcijos formos objektui.

  • Kolekcijos ypatybės vertės nustatymas prilygsta kiekvienos atskiros formos ypatybės vertės nustatymui tame diapazone.

  • Kolekcijos ypatybė, kuri grąžina konstantą, grąžina individualios formos kolekcijoje nuosavybės vertę, jei visos kolekcijos formos turi tą pačią vertę. Jei ne visos kolekcijos formos turi tą pačią nuosavybės reikšmę, ji grąžina „mišrią“ konstantą.

  • Rinkinio ypatybė, kuri pateikia paprastą duomenų tipą (pvz.,  LongSingle arba  String ), grąžina individualios formos ypatybės vertę, jei visos kolekcijos formos turi tą pačią reikšmę.

  • Kai kurių savybių vertę galima grąžinti arba nustatyti tik tuo atveju, jei kolekcijoje yra tiksliai viena forma. Jei kolekcijoje yra daugiau nei viena forma, įvyksta vykdymo laiko klaida. Paprastai taip yra grąžinant arba nustatant ypatybes, kai lygiavertis veiksmas vartotojo sąsajoje galimas tik naudojant vieną formą (veiksmai, tokie kaip formos teksto redagavimas arba laisvos formos taškų redagavimas).

Ankstesnės gairės taip pat taikomos, kai nustatote figūrų, sugrupuotų pagal antrinius  ShapeRange  kolekcijos objektus, pvz.,  objektą FillFormat  , ypatybes. Jei antrinis objektas reiškia operacijas, kurias galima atlikti su keliais pasirinktais objektais vartotojo sąsajoje, galėsite grąžinti objektą iš  ShapeRange  kolekcijos ir nustatyti jo ypatybes. Pavyzdžiui, galite naudoti  ypatybę Užpildyti  , kad grąžintumėte  objektą FillFormat , kuris vaizduoja visų formų kolekcijoje ShapeRange  užpildus   . Nustačius šio FillFormat objekto ypatybes   bus nustatytos tos pačios ypatybės visoms atskiroms  ShapeRange  kolekcijos figūroms.

Žvilgsnis per „Shapes“ arba „ShapeRange“ kolekciją

Net jei negalite vienu metu atlikti operacijos su keliomis formomis vartotojo sąsajoje, jas pasirinkę ir tada naudodami komandą, lygiavertį veiksmą galite atlikti programiškai, naršydami per Formų  rinkinį  arba  ShapeRange  rinkinį, kuriame yra jūsų figūros. nori dirbti ir pritaikyti atitinkamas savybes bei metodus atskiriems   kolekcijos Shape objektams. Toliau pateiktame pavyzdyje apžvelgiamos visos figūros ir pridedamas tekstas prie kiekvienos formos, kuri yra automatinė forma. ir prideda tekstą prie kiekvienos formos, kuri yra automatinė forma.myDocument

VB

Set myDocument = ActivePresentation.Slides(1) 
For Each sh In myDocument.Shapes 
    If sh.Type = msoAutoShape Then 
        sh.TextFrame.TextRange.InsertAfter " (version 1)" 
    End If 
Next

Toliau pateiktame pavyzdyje sudaroma  ShapeRange  kolekcija, kurioje yra visos aktyviame lange šiuo metu pasirinktos figūros ir nustatomas kiekvienos kolekcijos formos, kurioje gali būti teksto, tekstas.

VB

For Each sh in ActiveWindow.Selection.ShapeRange
    If sh.HasTextFrame Then
        sh.TextFrame.TextRange = "Initially selected"
    End If
Next

Formų lygiavimas, paskirstymas ir grupavimas formų diapazone

Naudokite  lygiavimo  ir  paskirstymo  metodus, norėdami išdėstyti figūrų rinkinį viena kitos arba dokumento, kuriame jos yra, atžvilgiu. Naudokite  grupės  metodą arba  pergrupavimo  metodą, kad iš formų rinkinio suformuotumėte vieną sugrupuotą figūrą.


Instrukcijos, kaip klausytis muzikos „Google“ žemėlapiuose

Instrukcijos, kaip klausytis muzikos „Google“ žemėlapiuose

Muzikos klausymosi „Google“ žemėlapiuose instrukcijos. Šiuo metu vartotojai gali keliauti ir klausytis muzikos naudodami „Google“ žemėlapio programą „iPhone“. Šiandien WebTech360 kviečia jus

LifeBOX – Viettel internetinės saugojimo paslaugos naudojimo instrukcijos

LifeBOX – Viettel internetinės saugojimo paslaugos naudojimo instrukcijos

„LifeBOX“ naudojimo instrukcijos – „Viettel“ internetinės saugojimo paslauga, „LifeBOX“ yra naujai paleista „Viettel“ internetinės saugojimo paslauga, turinti daug puikių funkcijų.

Kaip atnaujinti būseną „Facebook Messenger“.

Kaip atnaujinti būseną „Facebook Messenger“.

Kaip atnaujinti būseną „Facebook Messenger“, „Facebook Messenger“ naujausioje versijoje vartotojams suteikė itin naudingą funkciją: keisti

Kortų žaidimo „Werewolf Online“ instrukcijos kompiuteryje

Kortų žaidimo „Werewolf Online“ instrukcijos kompiuteryje

Kortų žaidimo „Werewolf Online“ instrukcijos kompiuteryje, „Werewolf Online“ atsisiuntimo, įdiegimo ir žaidimo instrukcijos kompiuteryje per itin paprastą LDPlayer emuliatorių.

Instagrame paskelbtų istorijų ištrynimo instrukcijos

Instagrame paskelbtų istorijų ištrynimo instrukcijos

Instagrame paskelbtų istorijų ištrynimo instrukcijos. Jei norite ištrinti istoriją Instagram, bet nežinote, kaip? Šiandien WebTech360

Instrukcijos, kaip pridėti svarbių nuotraukų į „Facebook“.

Instrukcijos, kaip pridėti svarbių nuotraukų į „Facebook“.

Pažymėtų vaizdų pridėjimo prie „Facebook“ instrukcijos. Šiuo metu „Facebook“ leidžia mums asmeniniuose puslapiuose nustatyti siūlomus vaizdus. Čia kviečiame

Kaip ištaisyti „Windows Quick Assist“ neveikiančią klaidą

Kaip ištaisyti „Windows Quick Assist“ neveikiančią klaidą

Kaip ištaisyti neveikiančią „Windows Quick Assist“ klaidą, „Windows Quick Assist“ padeda lengvai prisijungti prie nuotolinio kompiuterio. Tačiau kartais tai sukelia ir klaidų. bet,

Instrukcijos, kaip įjungti / išjungti dainų maišymą „Spotify“.

Instrukcijos, kaip įjungti / išjungti dainų maišymą „Spotify“.

Instrukcijos, kaip įjungti / išjungti dainų maišymą „Spotify“, kad padėtų žmonėms greitai pakeisti dainų tvarką aukščiau esančiame muzikos grojaraštyje

Instrukcijos, kaip slapta įrašyti garsą „iPhone“.

Instrukcijos, kaip slapta įrašyti garsą „iPhone“.

Slapto įrašymo „iPhone“ instrukcijos, Šiuo metu „iPhone“ naudotojai gali įrašyti slaptai paliesdami galinę telefono dalį. Šiandien WebTech360 kviečia jus

Kaip naudoti „Mixamo“ pritaikytiems 3D modeliams animuoti

Kaip naudoti „Mixamo“ pritaikytiems 3D modeliams animuoti

Kaip naudoti „Mixamo“ tinkintų 3D modelių animavimui. Naudodami „Mixamo“ galite lengvai importuoti 3D modelį ir pritaikyti jam animacijos efektus. Žemiau pateikiamos naudojimo instrukcijos