Condividi tramite

Collegamento ipertestuale.

Anonimo
2022-01-25T10:46:52+00:00

Buongiorno,

Come posso aprire collegamenti ipertestuali ogni collegamento per cella ( sarebbero foto ) e salvarli direttamente nel DESK? anticipo che sono più di 2000 foto in jpg.

tipo selezionare tutte le celle ed aprirle , per poi salvare le rispettive foto nel Desk.

Grazie.

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

3 risposte

Ordina per: Più utili
  1. Anonimo
    2022-01-25T14:06:38+00:00

    VBA è un linguaggio di programmazione interno a excel, quella scritta non è nient'altro che una "routine" o "macro" che serve ad automatizzare il download di file dalla rete, praticamente fa quello che tu fai facendo click sul link e poi scaricando il file in locale.

    Se posti un file di esempio, privo di dati sensibili, quello che posso fare è adattarti il codice per farlo funzionare sul tuo.

    Puoi caricarlo per esempio su qualche sito di upload oppure condividendolo tramite OneDrive.

    Vedi il link di seguito per sapere come fare per condividere tramite OneDrive:

    https://support.office.com/it-it/article/condiv...

    Aspetto il file per poterti aiutare più velocemente.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2022-01-25T12:08:28+00:00

    Ciao,

    Intanto grazie della risposta .... ma di tutto quello che hai scritto purtroppo non riesco a capire un fico secco :) :) .. non sono un programmatore e sò usare il foglio excel assieme ai miei tantissimi limiti.

    Comunque vedo un'attimo di fare una ricerca su quello che hai scritto e speriamo bene .

    Grazie ancora.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2022-01-25T11:37:50+00:00

    Ciao Pasquale,

    qui Daniele, bentrovato nella community Microsoft,

    credo tu possa farlo solo utilizzando VBA a tal proposito questo codice dovrebbe funzionare modificando il path dove va a salvare le immagini e il range da dove prendere i link a patto che siano link diretti ad immagini e che tali immagini siano accessibili pubblicamente senza autenticazione:

    Option Explicit
    
    #If VBA7 Then
        Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As LongPtr, _                                                                                                ByVal szURL As String, _                                                                                                ByVal szFileName As String, _                                                                                                ByVal dwReserved As Long, _                                                                                                ByVal lpfnCB As LongPtr) As LongPtr
    #Else
        Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, _                                                                                        ByVal szURL As String, _                                                                                        ByVal szFileName As String, _                                                                                        ByVal dwReserved As Long, _                                                                                        ByVal lpfnCB As Long) As Long
    #End If
    
    Public Sub DownloadImages()
        
        Dim Downloaded As Boolean
        Dim Count As Long
        Dim Index As Long
        Dim FileName As String
        Dim NameParts As Variant
        Dim Values As Variant
        'path di salvataggio
        Const DownloadPath As String = "C:\Users\Zack\Desktop\"
        'range dei link
        Values = ThisWorkbook.Worksheets("Sheet1").Range("A2:A6").Value
        For Index = LBound(Values, 1) To UBound(Values, 1)
            NameParts = Split(Values(Index, 1), "/")
            FileName = NameParts(UBound(NameParts))
            Downloaded = URLDownloadToFile(0, Values(Index, 1), DownloadPath & FileName, 0, 0) = 0
            If Downloaded Then Count = Count + 1
        Next Index
        
        MsgBox Count & " files out of " & UBound(Values, 1) - LBound(Values, 1) + 1 & " downloaded."
        
    End Sub
    

    La risposta è stata utile?

    0 commenti Nessun commento