• 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.

Interne hyperlinks Excel te behouden in PDF?

Status
Niet open voor verdere reacties.

gvanwijk

Gebruiker
Lid geworden
3 mei 2018
Berichten
182
Als voorbeeld het bijgevoegde bestand.

Kolom A: platte tekst
Kolom B: hyperlinks automatisch gegenereerd via formule:
Code:
=HYPERLINK("https://www.google.com/search?tbm=isch&q="&A2;A2)

Nu omzetten naar PDF: dan verliest de hyperlink in kolom B zijn bestemming, op zich logisch vanwege de interne verwijzing naar kolom A, maar hoe is dit wel te realiseren?
 

Bijlagen

opgelost

Oplossing:
Hyperlinks via de hyperlink-formule kunnen in een PDF behouden blijven door ze eerst naar Word te kopiëren en vervolgens weer terug met behoud opmaak=kopiëren speciaal (P).
Daarna via Excel opslaan als -> PDF. Tussenstap via Word is nodig want PDF herkent anders de interne verwijzing van de hyperlink formule niet.
 
Of met een macrootje.

Kolom B mag je leegmaken.

Code:
Sub hsv()
Dim cl As Range
 With Sheets("Test")
 For Each cl In .Range("a2", .Cells(Rows.Count, 1).End(xlUp))
    .Hyperlinks.Add cl, "https://www.google.com/search?tbm=isch&q=" & cl.Text, , , cl.Text
   Next cl
  .ExportAsFixedFormat 0, "c:\temp\hyper", , , , , , True
 End With
End Sub
 
Ik krijg dan foutmelding op deze regel:

.ExportAsFixedFormat 0, "c:\temp\hyper", , , , , , True
 
Verander "c:\temp" naar een ander locatie.
 
:thumb: Logisch..

Dan toch nog een vraag: nu krijg ik in de PDF als resultaat deze opmaak voorbeeldhoedelinkeruitziet
Kan de macro zo aangepast worden dat ik de normale layout krijg, dus zonder onderstreep en zwart (ipv blauw), alsof het normale tekst is dus?
Macro werkt super zo, bedankt!
 
Code:
Sub hsv()
Dim cl As Range
 With Sheets("Test")
 For Each cl In .Range("a2", .Cells(Rows.Count, 1).End(xlUp))
      .Hyperlinks.Add cl, "https://www.google.com/search?tbm=isch&q=" & cl.Text, , , cl.Text
[COLOR=#ff0000]       cl.font.color = vbblack[/COLOR]
[COLOR=#ff0000]       cl.font.underline = false[/COLOR]
   Next cl
  .ExportAsFixedFormat 0, "c:\temp\hyper", , , , , , True
 End With
End Sub
 
Ik snap 'm dank je, cl.Font.Name = "Univers" nog toegevoegd en werkt super :thumb:
 
2e kolom (A+C)

@HSV
Toch nog een vraag. Als ik de namen die in hyperlinks moeten worden omgezet niet alleen in kolom A zet maar ook in C: hoe wordt de macro dan?
 
Geen idee of ze beide even lang zijn, maar dit past altijd,

Code:
 For Each cl In Union(.Range("a2", .Cells(Rows.Count, 1).End(xlUp)), .Range("c2", .Cells(Rows.Count, 3).End(xlUp)))
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan