The Origin Forum
File Exchange
Try Origin for Free
The Origin Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ | Send File to Tech support
 All Forums
 Origin Forum for Programming
 Forum for Python
 Updating Origin OLE in a PowerPoint File(pywin32)

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

Screensize:
UserName:
Password:
Anti-Spam Code:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkUpload FileInsert Image Insert CodeInsert QuoteInsert List
   
Message:

* HTML is OFF
* Forum Code is ON
Smilies
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

 
Check here to subscribe to this topic.
   

T O P I C    R E V I E W
nk.S Posted - 11/17/2024 : 4:03:55 PM
Origin Ver. and Service Release (Select Help-->About Origin): origin2023
Operating System: windows, pycharm


Hi, I really need your help. I would greatly appreciate any advice you can give.

I am trying to sequentially open multiple Origin OLE objects embedded in a PowerPoint slide and automatically update the worksheets originally inside each object, but I am facing an issue.

When multiple OLE objects are open, op.find_sheet only calls the first opened OLE object, so I cannot update the next one. I tried using op.utils.exit to close the first OLE object and then reconnect the application with op.attach() to update the next OLE object, but I am unable to establish the connection to the application.

The approximate code is as follows:

import os
import win32com.client
import originpro as op

powerpoint = win32com.client.Dispatch("PowerPoint.Application")
powerpoint.Visible = True

origin = win32com.client.Dispatch("Origin.ApplicationSI")
origin.Visible = True

for slide_index, slide in enumerate(presentation.Slides)

for shape_index, shape in enumerate(slide.Shapes):
ole_name = shape.Name

if "origin" in ole_name.lower():

shape.OLEFormat.DoVerb(1)
wks = op.find_sheet('w', 0)
wks.from_df(data)
shape.OLEFormat.DoVerb(0)
op.detatch()
op.utils.exit()
op.attach()

presentation.Save()
presentation.Close()
powerpoint.Quit()
op.exit()


sng

The Origin Forum © 2020 Originlab Corporation Go To Top Of Page
Snitz Forums 2000