In my experience, it's very rare to need to use the active cell for anything. But you're quite right, setting the active cell changes the import point. I, as Psmith would say, confused the unusual with the impossible. It's still ugly - I want my users to run my macros and end up back where they started. But I have Gargled extensively and found no way of putting a picture over a cell directly except by using the active cell. However, I have found an improvement on my previous code. Rather than the loops to work out the top and left of the target cell, the following works:
$nVPos = $rTarget->Top;
$nHPos = $rTarget->Left;
And these can be refactored into the assignments so that the lines become something like:
$picCurrent->{Top} = $rTarget->{Top};
$picCurrent->{Left} = $rTarget->{Left};
Anchoring in this way means that inserting or deleting rows and columns moves the picture, so I think we now get the best of all worlds.
Thanks, all - I've learned something new about the tool that pays my bills!
John Davies
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|