• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opgelost Hyperlinks maken in Excel tabblad

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

Jaro1

Gebruiker
Lid geworden
12 mrt 2023
Berichten
16
Goede middag,

Ik heb een macrocode die bestanden uit een geselecteerde map (meestal pdf bestanden)
Omzet naar koppelingen of hyperlinks in een tabblad van Excel en dit steeds vanaf cel A1
Graag had ik zelf de controle in welke kolom of cel er begonnen wordt.
Kan er iemand deze code aanpassen.
Zelf heb ik geen weet hoe eraan te beginnen. Dank U

Code:
Sub Hyperlink()


    Dim xFSO As Object
    Dim xFolder As Object
    Dim xFile As Object
    Dim xFiDialog As FileDialog
    Dim xPath As String
    Dim I As Integer
    Set xFiDialog = Application.FileDialog(msoFileDialogFolderPicker)
    If xFiDialog.Show = -1 Then
        xPath = xFiDialog.SelectedItems(1)
    End If
    Set xFiDialog = Nothing
    If xPath = "" Then Exit Sub
    Set xFSO = CreateObject("Scripting.FileSystemObject")
    Set xFolder = xFSO.GetFolder(xPath)
    For Each xFile In xFolder.Files
        I = I + 1
        ActiveSheet.Hyperlinks.Add Cells(I, 1), xFile.Path, , , xFile.Name
    Next
End Sub
 
Laatst bewerkt door een moderator:
De 1 hier, Cells(I, 1), bepaalt de te gebruiken kolom.
1 = A, 2 = B enz.
Maak die dus variabel.

Zoiets:
Code:
Sub Hyperlink()
    Set xFiDialog = Application.FileDialog(msoFileDialogFolderPicker)
    If xFiDialog.Show = -1 Then
        xPath = xFiDialog.SelectedItems(1)
    End If
    Set xFiDialog = Nothing
    If xPath = "" Then Exit Sub
    
    col = InputBox("Geef kolomnummer: ", "Kolomnummer")
    
    bst = Dir(xPath & "\*.*")
    While bst <> ""
        I = I + 1
        ActiveSheet.Hyperlinks.Add Cells(I, Int(col)), xPath, , , bst
        bst = Dir()
    Wend
End Sub
 
In de eerste code gaf u aan:

De 1 hier, [FONT=&amp]Cells(I, 1)[/FONT], bepaalt de te gebruiken kolom.
1 = A, 2 = B enz. dus met hier een getal aan te geven voorbeeld: 16 start ik in kolom P rij 1
Maar ik wens te starten in kolom P en in rij 40 bijvoorbeeld.
Als ik ook het rijnummer waar moet gestart worden kan ingeven in de code is de code compleet.
Als dit zou kunnen?
Alvast Dank voor de hulp en moeite.
 
Zelf een start cel kiezen kan zo:
Code:
Sub Hyperlink()
    Set xFiDialog = Application.FileDialog(msoFileDialogFolderPicker)
    If xFiDialog.Show = -1 Then
        XPath = xFiDialog.SelectedItems(1)
    End If
    Set xFiDialog = Nothing
    If XPath = "" Then Exit Sub
    
    Set Rng = Application.InputBox("Selecteer een cel", "Start cel", , , , , , 8)
    I = Rng.Row
    
    bst = Dir(XPath & "\*.*")
    While bst <> ""
        ActiveSheet.Hyperlinks.Add Cells(I, Rng.Column), XPath, , , bst
        I = I + 1
        bst = Dir()
    Wend
End Sub
 
Laatst bewerkt:
Anderen doen dat zó:

Code:
Sub M_snb()
  With Application.FileDialog(4)
    If .Show = -1 Then
      c00 = Dir(.SelectedItems(1) & "*.pdf")
      If c00 <> "" Then y = Application.InputBox("selecteer een kolom", "kolom", , , , , , 8).Column
      Do While c00 <> ""
        ActiveSheet.Hyperlinks.Add ActiveSheet.Cells(Rows.Count, y).End(xlUp).Offset(1), .SelectedItems(1), , , c00
        c00 = Dir
      Loop
    End If
  End With
End Sub
 
Laatst bewerkt:
Hallo, met de code zelf een start cel kiezen werkt maar het probleem is dat als je op de hyperlink
in Excel klikt dat hij gewoon naar de geselecteerde map gaat waar de bestanden staan en niet de hyperlink laat zien.
In vorige codes ging dit echter wel.
Bij de laatste code gepost zie ik niks gebeuren. of ligt het aan mij?

Bedankt al voor de moeite
 
Laatst bewerkt:
Foutje van mij inderdaad.
De Activesheet regel moet dit zijn:
Code:
ActiveSheet.Hyperlinks.Add Cells(I, Rng.Column), XPath & "\" & bst, , , bst

Als het je alleen om de PDF bestanden gaat wijzig je de bst variabele in dit:
Code:
bst = Dir(XPath & "\*.pdf")

De versie van snb mist hier een \ teken:
Code:
c00 = Dir(.SelectedItems(1) & "[COLOR="#FF0000"]\[/COLOR]*.pdf")
 
Laatst bewerkt:
Werkt nu zoals ik het wou.

De perfeckte oplossing aan allen bedankt. :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan