Как получить ссылки в Excel для открытия в одной вкладке браузера

У меня есть таблица Excel с html-ссылками в одном столбце. Связи генерируются perl script через Win32::OLE так же (внутри цикла с индексом $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 вкладками после работы с листом на некоторое время. Это боль взади, потому что мне периодически приходится проходить и закрывать их.

Есть ли способ открыть эти ссылки на одной вкладке браузера? Я не знаю, можно ли указать эквивалент HTML якорной цели с постоянным именем, используя метод Hyperlinks->Add, или если это даже выполнит задание.

3 ответа

В зависимости от того, какой браузер вы используете:

Для 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


Попробуйте использовать Таблица: 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)


Итак, я нашел документы для объектной модели Excel, и нет свойств гиперссылки, которые указывали бы, что это возможно. Спасибо за помощь.

licensed under cc by-sa 3.0 with attribution.