2016-09-28 16 views
3

第1ワークシートのセル値を第2ワークシートの値とperlを使用してリンクするperlスクリプトを作成しようとしています。 私はperlで使用可能だった以下のモジュール使用してみました: -リンクはperlを使用してExcelワークシートを変換します

  1. Excelを:: XLSX

  2. スプレッドシート::ライター:: WriteExcel

誰もが私を助けることができますこれを行う単純なperlスクリプト。

例: -

Worksheet1

enter image description here


Worksheet2

enter image description here

ので、上記の例ではルールの列のアイテムがWorksheet1でR1R2R3R1、ルールの列の項目に私たちを取るハイパーリンクでなければなりませんR2、クリックされたそれぞれR3

誰かがそれがPerlを使用して行うことができますどのように私を見るか、少なくとも、モジュールスプレッドシートを使用する方法について正しい方向に私を押し:: WriteExcelまたはエクセルことができます::この問題についてXLSX ::ライター。

私を助けてください.. !!

+0

あなたはどういうふうにExcelでそれをしますか? – simbabque

答えて

3

Excel :: Writer :: XLSXを使用すると、write_urlに続いてwrite_formulaメソッドが使用されます。ここに例があります:

#!/usr/bin/perl 
use strict; 
use Excel::Writer::XLSX; 
my $workbook = Excel::Writer::XLSX->new('test.xlsx'); 
my $worksheet1 = $workbook->add_worksheet('Worksheet1'); 
my $worksheet2 = $workbook->add_worksheet('Worksheet2'); 

$worksheet2->write_string(0,0, 'Rules'); 
$worksheet2->write_string(1,0, 'R1'); 
$worksheet2->write_string(2,0, 'R2'); 
$worksheet2->write_string(3,0, 'R3'); 

my $format = $workbook->add_format(color => 'blue', underline => 1); 
$worksheet1->write_url(1,1, 'internal:Worksheet2!A2', $format); 
$worksheet1->write_formula(1, 1, '=Worksheet2!A2'); 
+0

パディ・コリンズありがとうございました。私はここに疑念を明確にしたい。コードでは、write_stringメソッドを使用して列に値を設定しています。しかし、もし私がこれらの文字列の配列をどのように使用して列に値を設定するのですか? –

+0

Vivekについては、Excel :: Writer:XLSXの手順をご覧ください。そこには多くの詳細があります。 forループを実行するか、write_col()またはwrite_row()を使用します。 http://search.cpan.org/~jmcnamara/Excel-Writer-XLSX/lib/Excel/Writer/XLSX.pm –

関連する問題