Convertir une URL OneDrive en chemin Windows

oguruma

XLDnaute Occasionnel
L'idée de convertir par exemple ceci
1701880871696.png

en
1701880888786.png

et sans utiliser les API Windows pour chercher à convertir l'URL au format UNC

  • Etape 1 : supprimer
  • Etape 2 : récupérer
    Documents/TOURNUS_HDF/TOURNUS_23_24
  • Etape 3 : récupérer le contenu de la variable d'environnement OneDrive par ceci Environ("ONEDRIVE")
  • Etape 4 : concaténer les étapes 3 et 2
  • Etape 5 : remplacer les / par des \
Appel de la fonction : =ConvertOneDriveFoler(DOSSIER_TOURNUS)

Au préalable on vérifie si on a bien chemin au format OneDrive commençant par "https://"

Donc : création d'une fonction VBA ConvertOneDriveFoler
VB:
Public Function ConvertOneDriveFoler(hUrl As String) As String
    Dim sR1 As String
    Dim sR2 As String
    Dim sR3 As String
    Dim sR4 As String
    Dim sR5 As String
    Application.Volatile True
    If Left(hUrl, 8) = "https://" Then
        sR1 = hUrl
        sR1 = Replace(sR1, "https://d.docs.live.net/", "")
        sR2 = sRight(sR1, "/")
        sR3 = Environ("ONEDRIVE")
        sR4 = sR3 & "\" & sR2
        sR5 = Replace(sR4, "/", "\")
        ConvertOneDriveFoler = sR5
    Else
        ConvertOneDriveFoler = hUrl
    End If
End Function

Code:
Public Function sRight(hSourceString As String, hSearchString As String) As String
    Dim iPos As Integer
    Dim iStart As Integer
    Dim iLen As Integer
    Application.Volatile True
  
    iPos = InStr(hSourceString, hSearchString)
    iLen = Len(hSourceString)
    iStart = iLen - iPos
    sRight = Right(hSourceString, iStart)
End Function
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
315 093
Messages
2 116 140
Membres
112 669
dernier inscrit
Guigui2502