Te damos el arreglo a este dilema, al menos eso deseamos. Si sigues con interrogantes puedes escribirlo en el apartado de preguntas, que sin dudarlo te ayudaremos
Solución:
Cuando una celda tiene solo una URL, puede recuperar la URL de la celda utilizando el siguiente script simple.
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var url = sheet.getRange()("A2").getRichTextValue().getLinkUrl();
Fuente: https://gist.github.com/tanaikech/d39b4b5ccc5a1d50f5b8b75febd807a6
Cuando el archivo de Excel que incluye las celdas con los hipervínculos se convierte a la hoja de cálculo de Google, también se puede ver esta situación. En mi caso, recupero las URL usando Sheets API. Un script de muestra es el siguiente. Creo que puede haber varias soluciones. Así que por favor piense en esto como uno de ellos.
Cuando use este script, habilite Sheets API en Advanced Google Services y API Console. Puede ver cómo habilitar Sheets API aquí.
Guión de muestra:
var spreadsheetId = "### spreadsheetId ###";
var res = Sheets.Spreadsheets.get(spreadsheetId, ranges: "Sheet1!A1:A10", fields: "sheets/data/rowData/values/hyperlink");
var sheets = res.sheets;
for (var i = 0; i < sheets.length; i++)
var data = sheets[i].data;
for (var j = 0; j < data.length; j++)
var rowData = data[j].rowData;
for (var k = 0; k < rowData.length; k++)
var values = rowData[k].values;
for (var l = 0; l < values.length; l++)
Logger.log(values[l].hyperlink) // You can see the URL here.
Nota:
- Por favor, establezca
spreadsheetId
. Sheet1!A1:A10
es una muestra Establezca el rango para su situación.- En este caso, cada elemento de
rowData
corresponde al índice de la fila. cada elemento devalues
corresponde al índice de la columna.
Referencias:
- Método: hojas de cálculo.get
Si esto no es lo que quieres, por favor dímelo. Me gustaría modificarlo.
Tienes la posibilidad dar recomendación a esta sección si te fue útil.