2016-10-05 2 views
2

У меня есть электронная таблица google, скопированная из excel. У меня есть некоторые проблемы с этим. Это мой документ https://docs.google.com/spreadsheets/d/1Ok_phu5OXtvKHLj3MLa7N3WV2qBdMWRz8dLHnTqjHrc/edit?usp=sharingКак получить URL из ячейки Google Spreadsheet с помощью скрипта Google Apps?

cell with a hyperlink without a formula

Это мой код

function myFunction() { 
    cel = SpreadsheetApp.getActiveSpreadsheet().getActiveCell() 
    Logger.log(cel.getFormula()) 
    Logger.log(cel.getValue()) 
} 

И это мой журнал:

[16-10-05 13:39:59:628 EEST] 
[16-10-05 13:39:59:629 EEST] RU: VTB Arena - Park and Hotel 

И мне нужно, чтобы получить URL (https://na3.salesforce.com/0065000000a1b8p) Как Я могу это сделать?

+0

Связанный: http://stackoverflow.com/questions/13847007/how-can-i-retrieve-the-hyperlink-from-a-data-cell-in-google-apps-script –

ответ

-1

Попробуйте это:

var url = /"(.*?)"/.exec(cel.getFormulaR1C1())[1]; 
Logger.log(url); 

Он вытащил URL, когда я добавил его в качестве ссылки вручную.

Обратите внимание, что я использовал следующий I моего тест:

var dataSheet = CentralSS.getSheetByName(CENTRAL_DATAFILES_SHEETNAME); 
    var range = dataSheet.getRange("E2"); 
    var url = /"(.*?)"/.exec(range.getFormulaR1C1())[1]; 
+0

Это возвращает свойство Не читайте. –

+0

Когда я запускаю отладку и ломаю сразу после установки переменной, URL-адрес содержит ссылку. Я что-то упускаю? –

+0

Ваш код работает для ячеек, имеющих формулу с функцией гиперссылки, но не для случая, представленного OP. –

1

В это время Spreadsheet служба Google Apps Script не в состоянии получить свойство клеток богатого содержания текста, только простой текст с помощи getValue(). Другие методы, такие как getFormula(), getNote(), могут получить соответствующее свойство ячейки, но ни один из них не содержит URL ссылки.

В Google Таблицах обходным путем является получение URL-адреса вручную. Программно альтернативой является использование VBA в файле Excel для получения гиперссылок до преобразования файла в формат Google Таблиц. См. answer до Can I use an excel formula to extract the link location of a hyperlink in a cell?.

0

Я думаю, что лучше всего опубликовать электронную таблицу google в Интернете, а затем разобрать html с BS4, чтобы получить URL-адреса.

Смежные вопросы