Mezga ha una serie di celle che contengono collegamenti ipertestuali. Questi collegamenti ipertestuali sono costituiti da parole come “fare clic qui” o “ulteriori informazioni”. In altre parole, ogni collegamento ipertestuale contiene testo visualizzato diverso dall’URL sottostante che viene attivato quando si fa clic sul collegamento. Mezga vorrebbe sapere se esiste un modo, senza utilizzare una macro, per estrarre l’URL sottostante per ciascuno di questi collegamenti ipertestuali e posizionare quell’URL in una cella diversa.

Senza usare le macro, puoi farlo:

  1. Fare clic con il pulsante destro del mouse su un collegamento ipertestuale. Vedrai apparire un menu contestuale.

  2. Dal menu contestuale, scegli Modifica collegamento ipertestuale. Excel visualizza la finestra di dialogo Modifica collegamento ipertestuale. (Vedi figura 1.)

  3. Seleziona e copia (Ctrl + C) l’intero URL dal campo Indirizzo della finestra di dialogo.

  4. Premere Esc per chiudere la finestra di dialogo Modifica collegamento ipertestuale.

  5. Incolla l’URL in qualsiasi cella desiderata.

Nota che questo è per un singolo collegamento ipertestuale. Se hai un sacco di collegamenti ipertestuali in un foglio di lavoro e desideri recuperare gli URL, devi farlo per ogni collegamento ipertestuale. Ovviamente questo può diventare noioso molto rapidamente.

La cura per la noia, piaccia o no, è una macro. Con una macro, ottenere l’URL sottostante per un collegamento ipertestuale è un gioco da ragazzi. Tutto ciò che la macro deve fare è prestare attenzione alla proprietà Address del collegamento ipertestuale.

Quello che segue è un esempio di una macro che troverà ogni collegamento ipertestuale in un foglio di lavoro, estrarrà l’URL di ciascuno e incollerà quell’URL nella cella direttamente a destra del collegamento ipertestuale.

Sub ExtractHL()

Dim HL As Hyperlink     For Each HL In ActiveSheet.Hyperlinks         HL.Range.Offset(0, 1).Value = HL.Address     Next End Sub

Invece di una macro “forza bruta”, potresti anche creare una funzione definita dall’utente che estrarrebbe e restituirebbe l’URL per qualsiasi collegamento ipertestuale a cui era puntato:

Function GetURL(rng As Range) As String     On Error Resume Next     GetURL = rng.Hyperlinks(1).Address End Function

In questo caso puoi posizionarlo dove vuoi. Se vuoi, ad esempio, che l’URL di un collegamento ipertestuale in A1 sia elencato nella cella C25, nella cella C25 devi inserire la seguente formula:

=GetURL(A1)

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (9815) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia di menu precedente di Excel qui: