I found a file of Perl one liners for writing to Excel files.
To add images it gives the following Perl #___ INSERT PICTURE
$sheet -> Pictures -> Insert("picture_name"); # Insert
+in upper-left corner
$excel -> ActiveSheet -> Pictures -> Insert("picture_name"); # Insert
+in active cell
#___ ACTIVATE CELL
$sheet -> Range("A2") -> Activate;
I tried to use this to add pictures as specific cells. The Perl code is below.
In this code I attempted to add pictures at two specific cells, A1 and F10. I hoped that the top left hand corner of the picture would be in the defined cell. Two pictures were added butunfortunately they were added on top of each other and the cell was not either of the ones I specified.
Can any Monk enlighten me as to what changes I should make to get the pictures where I want them?
use OLE;
use Win32::OLE::Const "Microsoft Excel";
use strict "vars";
my ($excel, $workbook, $sheet);
my ($cell_id, $image_file_full);
#___ DEFINE EXCEL
$excel = CreateObject OLE "Excel.Application";
#___ MAKE EXCEL VISIBLE
$excel -> {Visible} = 1;
#___ ADD NEW WORKBOOK
$workbook = $excel -> Workbooks -> Add;
$sheet = $workbook -> Worksheets("Sheet1");
$sheet -> Activate;
$cell_id = "A1";
$sheet -> Range($cell_id) -> Activate;
$image_file_full = "full directory path and image name here”;
$excel -> ActiveSheet -> Pictures -> Insert($image_file_full); # Inser
+t in active cell
$cell_id = "F10";
$excel -> ActiveSheet -> Pictures -> Insert($image_file_full);
-
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.
|