如何在Excel中获取链接以在单个浏览器选项卡中打开

我有一个Excel电子表格与HTML链接在一列中。 链接正在通过Win32::OLE的perl脚本生成,如下所示(在索引$ i的循环内):

 my $range = $Sheet->Range("B".$row); my $link = "http://foobar.com/show.pl?id=$i"; $Sheet->Hyperlinks->Add({Anchor=>$range,Address=>$link,TextToDisplay=>"Link to $i"}); 

目前,每次点击其中一个链接时,都会在新的浏览器选项卡中打开。 由于有很多这样的链接,我在用了一段时间的工作表之后,用了20个标签。 这是背后的痛苦,因为我经常要经过并closures它们。

有没有办法让这些链接打开在同一个浏览器选项卡? 我不知道是否可以使用Hyperlinks->Add方法来指定具有常量名称的锚定目标的HTML等效项,或者甚至可以执行该作业。

取决于您使用的浏览器:

对于Firefox,请参阅此链接强制Firefox在相同的选项卡中打开链接

需要在about:config browser.link.open_newwindow = 1设置选项

对于IE, Tools/options/General/Tabs/Setings

 Open links from other programs in: The current Tab or Window 

尝试使用Spreadsheet :: WriteExcel

 #!/usr/bin/perl -w use strict; use Spreadsheet::WriteExcel; # Create a new workbook called simple.xls and add a worksheet my $workbook = Spreadsheet::WriteExcel->new('Example.xls'); my $worksheet = $workbook->add_worksheet(); # The general syntax is write($row, $column, $token). Note that row and # column are zero indexed # Write a hyperlink $worksheet->write(10, 0, 'http://perldoc.perl.org/'); $worksheet->write(11, 0, 'http://stackoverflow.com/'); __END__ 

超链接在相同的浏览器标签中打开(在IE,Firefox,Chrome中运行正常)

所以我find了Excel对象模型的文档,没有超链接的属性表明这是可能的。 感谢回来寿。