View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Tom Ogilvy Tom Ogilvy is offline
external usenet poster
 
Posts: 6,953
Default PageSetup.set_PrintQuality .NET method

I say skip it because, in my experience -
Have you actually observed a difference in the quality? However, you seem
to think you need it.

If it records 300 and 600, then that certainly isn't supported by the help.
This wouldn't be the first time that the macro recorder records something
different from help (and it works) or records something different from help
(and it doesn't work) or records consistent with help (and it still doesn't
work). there are definite instances of recorded code not working. what is
"recorded" is specified in some type of internal database - it really isn't
literally "recording" the code executed.

Like any other Print property, you can always use the Windows API to set it.

anyway, back to PrintQuality. In .NET, do you have a variable that can be a
Long or a variant array? I don't think so. I suspect you would have to go
to the documentation on the Interop to see what the second argument is. I
suspect it has something to do with the fact that it can return an array if
you don't use the index and .Net doesn't support the variant variable type.

--
Regards,
Tom Ogilvy


"ROB" wrote:

Well what about the other parameter?

Why did Microsoft change this parameter in the object? Especially considering
the macro recording shows setting the PrintQuality has not changed
e.g .PrintQuality=300 is still generated.

and why should I skip using it ? I still need to set the PrintQuality
How else should I set it? If you are going to suggest not using one thing to
make a setting could you at least point out a better way to make the setting?
and what exactly is the second parameter: object_p2 what is p2 and what
does that mean to anyone? I can only imagine it is an integer representing
the desired print quality

Does anyone have any ideas on this?
--
Rob



"Tom Ogilvy" wrote:

This is what the help says: Index Optional Variant. Horizontal print
quality (1) or vertical print quality (2). Some printers may not support
vertical print quality. If you dont specify this argument, the PrintQuality
property returns (or can be set to) a two-element array that contains both
horizontal and vertical print quality.

I didn't see anything about 0.

maybe you should skip trying to use it.

--
Regards,
Tom Ogilvy



"ROB" wrote:

Can anyone tell me how this property is set. In the macro it is
PageSetup.PrintQuality=600 or PageSetup.PrintQuality=300
But in .NET a c# object seems to only have
PageSetup.set_PrintQuality(index,object_p2)

according to some sources
index value can be 0,1 or 2 0 beging Horizontal print quality,1 being
vertical
So do I need to function calls? Is this the way to set the printquality
parameter properly?


Rob