JavaScript, HTML, CSS e... !
3 commenti

Pillola di Apps Script #0001

Estrarre il collegamento ipertestuale da una testo con link in una cella

Pillola di Apps Script #0001

Nome: Estrarre il collegamento ipertestuale da una testo con link in una cella

Video:

Descrizione: Con la funzione proposta, definendo una cella o un intervallo di celle all'interno di un foglio dello Spreadsheet specificato tramite il suo ID, è possibile estrarre il link associato al testo contenuto nelle rispettive celle. È necessario abilitare le Google Sheets API dai Servizi avanzati di Google nell'editor di Apps Script.

Stato di verifica: VERIFICATO

Ambito di utilizzo: Google Sheets

Segnalatore: Michele Pisani

Codice:

// Dal 13/06/2020
// Fonte: https://www.appsscript.it
// https://developers.google.com/apps-script/reference/spreadsheet/rich-text-value#getlinkurl

function getHyperlinkFromCell_new() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Foglio1");
  var urls = sheet.getRange("A1:A2").getRichTextValues();
  for (var i = 0; i < urls.length; i++) {
    for (var j = 0; j < urls[i].length; j++) {
      Logger.log(urls[i][j].getLinkUrl());
    }
  }
}



// Prima del 13/06/2020
// Fonte: https://stackoverflow.com/questions/53863752/apps-script-how-to-get-hyperlink-from-a-cell-where-there-is-no-formula-hyperlin

function getHyperlinkFromCell() {
  var spreadsheetId = "INSERIRE_QUI_LO_SPREADSHEET_ID";
  var res = Sheets.Spreadsheets.get(spreadsheetId, {ranges: "Foglio1!D13:D31", fields: "sheets/data/rowData/values/hyperlink"}); // definire l'intervallo desiderato
  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) // Nel log è possibile visualizzare il collegamento ipertestuale desiderato
        }
      }
    }
  }
}

Se vuoi scrivere anche tu la tua Pillola di Apps Script su appsscript.it segui le indicazioni contenute nell'articolo "Pillole di Apps Script: la sezione dedicata a piccole funzioni, trucchi e suggerimenti".

Il tuo contributo è fondamentale, quello che per qualcuno può sembrare una banalità per qualcun altro è un grande aiuto!

Tags

Michele Pisani

Michele Pisani

Sviluppatore Javascript ed esperto in Digital Analytics

L'esperienza nel settore Digital Analytics unita ad anni di sviluppo in Javascript ha trovato la massima espressione in Google Apps Script che mi ha permesso, con estrema facilità e poche righe di codice, di realizzare potenti applicazioni interattive e processi automatizzati integrati con i prodotti della G Suite.

Come contattarmi
scrivi un commento

3 Commenti

  1. Wednesday, January 12, 2022 alle ore 14:04 Matteo

    Ciao. Complimenti. Una domanda. Come potrei copiare questo testo/link in altra cella di un altro foglio (sempre dello stesso file) facendolo rimanere appunto un collegamento ipertestuale? Perchè quando provo a dare il riferimento di cella mi riporta solo il testo senza collegamento. Grazie mille.

    Rispondi a questo commento
  2. Saturday, April 15, 2023 alle ore 17:57 Matteo

    Salve, vorrei copiare solo i titoli in grassetto. Grazie

    Rispondi a questo commento
  3. Saturday, April 15, 2023 alle ore 17:58 Matteo

    Salve, vorrei copiare solo i titoli in grassetto. Grazie

    Rispondi a questo commento

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato.I campi contrassegnati da un * sono obbligatori
Puoi utilizzare i seguenti tag nei commenti:
[bold]testo[/bold] se vuoi evidenziare un testo con il grassetto[code]function helloworld() { }[/code] se vuoi pubblicare una porzione di codice[url]https://www.appsscript.it[/url] se devi riferirti ad un indirizzo web