Sorry about the accidental post
"Martin Brown" wrote in message
> Peter T wrote:
>> In 97-2003 the Arc.Add arguments are X1, Y1, X2, Y2. Point-2 can be to
>> the left and/or above Point1.
>>
>> In 2007 the arguments are L, T, W, H, the bottom-right must be
>> bottom-right! If really need to use Arcs.Add would need to keep this in
>> mind and use horizontal & vertical flip methods if/as necessary. It does
>> mean catering differently for 2007 and earlier versions. Better though
>> for consistency, if nothing else, to use Shapes.AddShape msoShapeArc etc.
>
> Trouble is that is *not* what it delivers.
>
> For L >= W it works OK
> But L < W it draws an arc with effective arguments L+W/2, T, W, H
Hmm your're right, or rather I agree L >=W is OK, but for me
if L < W then it ends up as L=W
> The y coordinates are handled correctly.
I don't think it's right to call them Y coordinates (in 2007), but T & H
work as anticipated in all scenarios
> This is why his original 10,10 start with radius 200 drifts across the
> page. I haven't tried msoShapeArc but I expect it shares this quirk.
Yes right again. In effect you cannot add msoShapeArc closer to the left
that its width, presumably to allow it to be flipped. But not right at all.
I doubt MS will accept the Arcs method is a bug as it is not an officially
supported method, hasn't been for ages. But msoShapeArc I think is a bug.
>> You could argue either way as to which is the more logical method (ie
>> which set of arguments), but I agree it should have simply stayed the
>> same. Don't
>
> Changing it after so long was a disaster and broke a lot of legacy code.
> BTW Can you get MS Help to show the argument list for Arc.Add in XL2007?
> If so what keywords will get it to display?
None of the DrawingObjects methods are listed in help, haven't been for ages
and only barely in 97. You'll get most of them in object browser but not the
Add arg's. However if you have the tools to hand to examine the excel.exe
the arg's are named as
X1, Y1, X2, Y2
and same as in previous versions. But in actuality in 2007 they are as I
mentioned previously L,T,W,H but L must be >= W
>> hold your breath though in the expectation it will be changed. The entire
>> DrawingObjects was maintained in 97 only for legacy reasons with earlier
>> versions. However many operations work very significantly faster at this
>> 'level and fortunately it's still exposed (almost), but by more favour
>> rather than obligation. I suspect it was not straightforward as the
>> entire drawing system in 2007 is radically different to previous
>> versions.
>
> And glacially slow to boot. Race conditions exist in the chart and graph
> axes drawing steps when used directly from VBA
Yeah that's another issue, particularly in an old system.
Regards,
Peter T