Hvernig á að búa til og setja inn form í PowerPoint með VBA?

Fyrir nokkrum dögum síðan, langaði mig að gera það frekar hversdagslega verkefni að búa til PowerPoint skyggnur sjálfvirkt. Þegar þú gerir PowerPoint sjálfvirkan vinnurðu venjulega með Slides and Shapes safnið. Skyggnur skýra sig frekar sjálfar og form eru nokkurn veginn allt annað, þar á meðal textareiti, aðgerðarhnappar, miðlunarhlutir, merkimiða, myndir, útkall, flæðirit og svo framvegis og svo framvegis. Þó að ég muni sýna tæknina með PowerPoint, þá á sumt af setningafræðinni í raun nokkuð vel við Microsoft Word og Excel.

Bara til að rifja upp, áður en þú byrjar með VBA macro þróun í PowerPoint þarftu að hafa þróunarflipann þinn virkan .

Í fyrsta lagi skulum við byrja á því að búa til kynningu sjálfkrafa með nokkrum glærum eins og sýnt er í þessari kennslu: búa til kynningu í VBA .

Nú getum við byrjað að vinna með form. Í fyrsta lagi skulum við halda áfram og opna VBA ritstjórann með því að ýta á Alt+ F11. Ef þú fylgdir fyrri kennslunni ættirðu að hafa mát 1 á einingarlistanum þínum (eins og sýnt er hér að neðan)

Vinna með form með VBA

Bætir við textareit með VBA

Við byrjum á því að bæta lóðréttum textareit við fyrstu glæruna okkar í kynningunni. Bættu eftirfarandi kóða við Module1, farðu síðan á undan og ýttu á Vista hnappinn (Ctrl+s) og keyrðu makróið þitt (smelltu á F5 eða ýttu á Run Sub/User 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

Athugaðu að þú getur breytt stærð textareitsins frekar auðveldlega með VBA. Í þessu tilfelli munum við breyta stærð fyrsta formsins í annarri skyggnunni, ekki hika við að breyta eftir þörfum.

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

Textaáhrif með VBA

Við skulum nú gera ráð fyrir að við viljum bæta textareit við allar glærur í kynningunni, að þessu sinni aðeins meira sjónrænt aðlaðandi. Til að gera það munum við nota VBA til að búa til sérsniðin textaáhrif sem við getum fellt inn í eina eða fleiri skyggnur í kynningunni. Við förum fyrst í gegnum kynningarglærurnar og bætum síðan við textaáhrifum eftir þörfum.

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

Hér er niðurstaðan ;-):

Hvernig á að búa til og setja inn form í PowerPoint með VBA?

Athugaðu að þú gætir eins notað einfalt vatnsmerki til að ná þessari tilteknu niðurstöðu.

PowerPoint útkall með VBA

Næsta dæmi okkar mun vera að bæta viðmælingum við kynninguna þína. Í þessu dæmi munum við bæta við útkalli við seinni skyggnuna.

Sub CreateCallout()

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

End Sub

Stilla eiginleika fyrir form

Margir snið eiginleikar forma eru ekki stilltir af eiginleikum sem eiga beint við  Shape  eða  ShapeRange  hlutinn. Þess í stað eru tengdir formeiginleikar flokkaðir undir aukahluti, eins og  FillFormat  hlutinn, sem inniheldur alla eiginleika sem tengjast fyllingu formsins, eða  LinkFormat  hluturinn, sem inniheldur alla eiginleika sem eru einstakir fyrir tengda OLE hluti. Til að stilla eiginleika fyrir lögun, verður þú fyrst að skila hlutnum sem táknar mengið skyldra formeiginleika og síðan stilla eiginleika þess hluts sem skilað er. Til dæmis notarðu  Fill  eiginleikann til að skila  FillFormat  hlutnum og síðan stillirðu  ForeColor  eiginleika  FillFormat  hlutarins til að stilla fyllingarforgrunnslitinn fyrir tilgreinda lögun, eins og sýnt er í eftirfarandi dæmi.

VB

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

Að beita eign eða aðferð á nokkur form á sama tíma

Í notendaviðmótinu eru nokkrar aðgerðir sem þú getur framkvæmt með nokkrum formum valin; til dæmis geturðu valið nokkur form og stillt allar einstakar fyllingar þeirra í einu. Það eru aðrar aðgerðir sem þú getur aðeins framkvæmt með valinni einni lögun; til dæmis er aðeins hægt að breyta textanum í form ef eitt form er valið.

Í Visual Basic eru tvær leiðir til að beita eiginleikum og aðferðum á sett af formum. Þessar tvær leiðir leyfa þér að framkvæma hvaða aðgerð sem þú getur framkvæmt á einni lögun á ýmsum formum, hvort sem þú getur framkvæmt sömu aðgerð í notendaviðmótinu eða ekki.

  • Ef aðgerðin virkar á mörgum völdum formum í notendaviðmótinu er hægt að framkvæma sömu aðgerðina í Visual Basic með því að smíða  ShapeRange  safn sem inniheldur form sem þú vilt vinna með og beita viðeigandi eiginleikum og aðferðum beint á  ShapeRange  safnið.

  • Ef aðgerðin virkar ekki á mörgum völdum formum í notendaviðmótinu geturðu samt framkvæmt aðgerðina í Visual Basic með því að fara í gegnum  Shapes  safnið eða í gegnum  ShapeRange  safn sem inniheldur form sem þú vilt vinna með og nota viðeigandi eiginleika og aðferðir við einstaka  Shape  hluti í safninu.

Margir eiginleikar og aðferðir sem eiga við  Shape  hlutinn og  ShapeRange  safnið mistakast ef þær eru notaðar á ákveðnar tegundir af formum. Til dæmis  mistekst TextFrame  eignin ef hún er notuð á form sem getur ekki innihaldið texta. Ef þú ert ekki viss um að hvert form í  ShapeRange  safni geti haft ákveðna eiginleika eða aðferð notaða á það, ekki nota eiginleikann eða aðferðina á  ShapeRange  safnið. Ef þú vilt beita einum af þessum eiginleikum eða aðferðum á safn af formum, verður þú að fara í gegnum safnið og prófa hvert einstakt form til að ganga úr skugga um að það sé viðeigandi tegund af lögun áður en eiginleikanum eða aðferðinni er beitt á það.

Að beita eign eða aðferð á ShapeRange safn

Ef þú getur framkvæmt aðgerð á mörgum völdum formum í notendaviðmótinu á sama tíma geturðu gert forritunarsamsvarið með því að smíða  ShapeRange  safn og síðan beita viðeigandi eiginleikum eða aðferðum á það. Eftirfarandi dæmi smíðar formsvið sem inniheldur sjálfvirk form sem heita "Stóra stjarnan" og "Litla stjarnan" á og beitir hallafyllingu á þau og beitir hallafyllingu á þau.myDocument

VB

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

Eftirfarandi eru almennar leiðbeiningar um hvernig eiginleikar og aðferðir hegða sér þegar þeim er beitt á  ShapeRange  safn.

  • Að beita aðferð á safnið jafngildir því að beita aðferðinni á hvern einstakan  Shape  hlut í því safni.

  • Að stilla verðmæti eignar í safninu jafngildir því að stilla gildi eignar hvers einstaks forms á því sviði.

  • Eiginleiki safnsins sem skilar fasta skilar verðmæti eignarinnar fyrir einstaka form í safninu ef öll form safnsins hafa sama gildi fyrir þá eign. Ef ekki öll form í safninu hafa sama gildi fyrir eignina skilar það „blanduðum“ fastanum.

  • Eiginleiki safnsins sem skilar einfaldri gagnagerð (eins og  LongSingle , eða  String ) skilar gildi eignarinnar fyrir einstaka lögun ef öll form í safninu hafa sama gildi fyrir þá eiginleika.

  • Gildi sumra eigna er aðeins hægt að skila eða stilla ef það er nákvæmlega eitt form í safninu. Ef það eru fleiri en ein lögun í safninu kemur upp keyrsluvilla. Þetta á almennt við um að skila eða stilla eiginleika þegar samsvarandi aðgerð í notendaviðmótinu er aðeins möguleg með einni lögun (aðgerðir eins og að breyta texta í formi eða breyta punktum frjálsrar myndar).

Undanfarandi leiðbeiningar eiga einnig við þegar verið er að stilla eiginleika forma sem eru flokkuð undir aukahluti ShapeRange safnsins  ,  eins og  FillFormat  hlutinn. Ef aukahluturinn táknar aðgerðir sem hægt er að framkvæma á mörgum völdum hlutum í notendaviðmótinu, muntu geta skilað hlutnum úr  ShapeRange  safni og stillt eiginleika hans. Til dæmis er hægt að nota  Fill  eiginleikann til að skila  FillFormat  hlutnum sem táknar fyllingar allra formanna í  ShapeRange  safninu. Með því að stilla eiginleika þessa  FillFormat  hluts mun það setja sömu eiginleika fyrir öll einstök form í  ShapeRange  safninu.

Að fara í gegnum Shapes eða ShapeRange safn

Jafnvel þó að þú getir ekki framkvæmt aðgerð á nokkrum formum í notendaviðmótinu á sama tíma með því að velja þau og nota síðan skipun, geturðu framkvæmt samsvarandi aðgerð forritunarlega með því að fara í gegnum Shapes safnið  eða  í gegnum  ShapeRange  safn sem inniheldur formin sem þú vilja vinna með og beita viðeigandi eiginleikum og aðferðum á einstaka  Shape  hluti í safninu. Eftirfarandi dæmi fer í gegnum öll formin á og bætir texta við hvert form sem er AutoShape. og bætir texta við hvert form sem er AutoShape.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

Eftirfarandi dæmi smíðar  ShapeRange  safn sem inniheldur öll þau form sem eru valin í virka glugganum og stillir textann í hvert form í safninu sem getur innihaldið texta.

VB

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

Samræma, dreifa og flokka form í formsviði

Notaðu  aðferðirnar Align  og  Distribute  til að staðsetja safn af formum miðað við hvert annað eða miðað við skjalið sem inniheldur þau. Notaðu  Group  aðferðina eða  Regroup  aðferðina til að mynda eitt flokkað form úr safni af formum.


Leiðbeiningar til að hlusta á tónlist á Google kortum

Leiðbeiningar til að hlusta á tónlist á Google kortum

Leiðbeiningar um að hlusta á tónlist á Google kortum. Eins og er geta notendur ferðast og hlustað á tónlist með því að nota Google Map forritið á iPhone. Í dag býður WebTech360 þér

Leiðbeiningar um notkun LifeBOX - geymsluþjónustu Viettel á netinu

Leiðbeiningar um notkun LifeBOX - geymsluþjónustu Viettel á netinu

Leiðbeiningar um notkun LifeBOX - geymsluþjónusta Viettel á netinu, LifeBOX er nýlega opnuð netgeymsluþjónusta Viettel með marga yfirburði eiginleika

Hvernig á að uppfæra stöðu á Facebook Messenger

Hvernig á að uppfæra stöðu á Facebook Messenger

Hvernig á að uppfæra stöðu á Facebook Messenger, Facebook Messenger í nýjustu útgáfunni hefur veitt notendum afar gagnlegan eiginleika: að breyta

Leiðbeiningar fyrir kortaleikinn Werewolf Online á tölvunni

Leiðbeiningar fyrir kortaleikinn Werewolf Online á tölvunni

Leiðbeiningar fyrir kortaleikinn Werewolf Online á tölvunni, Leiðbeiningar um niðurhal, uppsetningu og spilun Werewolf Online á tölvunni í gegnum einstaklega einfalda LDPlayer keppinautinn.

Leiðbeiningar um að eyða sögum settar á Instagram

Leiðbeiningar um að eyða sögum settar á Instagram

Leiðbeiningar um að eyða sögum settar á Instagram. Ef þú vilt eyða sögu á Instagram en veist ekki hvernig? Í dag WebTech360

Leiðbeiningar um að bæta við myndum á Facebook

Leiðbeiningar um að bæta við myndum á Facebook

Leiðbeiningar um að bæta við myndum á Facebook. Eins og er gerir Facebook okkur kleift að stilla myndir á persónulegum síðum okkar. Hér bjóðum við þér

Hvernig á að laga villu í Windows Quick Assist sem virkar ekki

Hvernig á að laga villu í Windows Quick Assist sem virkar ekki

Hvernig á að laga villu í Windows Quick Assist sem virkar ekki, Windows Quick Assist hjálpar þér að tengjast ytri tölvu auðveldlega. Hins vegar, stundum býr það líka til villur. En,

Leiðbeiningar um að kveikja/slökkva á blöndun laga á Spotify

Leiðbeiningar um að kveikja/slökkva á blöndun laga á Spotify

Leiðbeiningar um að kveikja/slökkva á því að blanda lögum á Spotify, Til að hjálpa fólki að breyta röð laga á lagalistanum hér að ofan

Leiðbeiningar til að taka upp hljóð í leyni á iPhone

Leiðbeiningar til að taka upp hljóð í leyni á iPhone

Leiðbeiningar um leynilegar upptökur á iPhone, Eins og er geta iPhone notendur tekið upp leynilega með því að snerta bakhlið símans. Í dag býður WebTech360 þér

Hvernig á að nota Mixamo til að búa til sérsniðin þrívíddarlíkön

Hvernig á að nota Mixamo til að búa til sérsniðin þrívíddarlíkön

Hvernig á að nota Mixamo til að lífga sérsniðin þrívíddarlíkön Með Mixamo geturðu auðveldlega flutt inn þrívíddarlíkan og beitt hreyfimyndaáhrifum á það. Hér að neðan eru leiðbeiningar um notkun