Forcing A Line To Execute Prior To Continuing

  • Thread starter Thread starter Donna
  • Start date Start date
D

Donna

Hi Folkes,
Sorry if this a duplicate.
I am going mad with this one. I have lost all those marbles that
everybody reckons I hadn't got in the first place!
The main purpose of my script is to activate a print property, print
and then deactivate the print property (in an external program).Code
attached below.


The following code activates print properties of an external
application. It is not excel. Both lines work seperately but put them
together and it just sets the property the last one it comes across.


My thinking was it runs the macro quicker then it can execute so I
thought putting a wait inbetween the 2 lines would solve my problem but
it doesn't. The wait works but the 2 line of code don't execute. I've
tried putting the 2nd line of code in a seperate macro that is called
but still not effect.
Can anybody point me in the right direction please of what I may try
next ?
Pleading, to put me out of my misery!
Donna


Sub Main()
Dim App As Object
Set App = CreateObject("PCDLRN.Applicati­on")
Dim Part As Object
Set Part = App.ActivePartProgram
Dim DmisCommands As Object
Set DmisCommands = Part.Commands


Part.EditWindow.ReportMode
Part.EditWindow.SetPrintOption­s PCD_PRINTER,PCD_ON,PCD_AUTO,1 ' Prints
OofTols
Call Wait (10)
Part.EditWindow.SetPrintOption­s PCD_OFF,PCD_OFF,PCD_APPEND,1 ' Resets
To No Printer


End Sub


Sub Wait (Seconds As Variant)
Ts =Timer
Te = Timer
Elapsed = Te-Ts
While Elapsed < Seconds
Te = Timer
Elapsed = Te-Ts
Wend
End Sub
 
This is not a solution; I just have some comments:

1. It is somewhat difficult to read your message: you might have added line
numbers to the code to make references explicit.
2. Is ReportMode within "Part.EditWindow.ReportMode" a method? If it is a
property its result needs to be assigned.
3. Try DoEvents instead of Wait.
4. I assume that the constants, like PCD_PRINTER, are defined somewhere?
5. Which 2 lines of code? There is only one line after Wait.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top