Printen hyperlinks

Status
Niet open voor verdere reacties.

Ron001

Gebruiker
Lid geworden
4 dec 2017
Berichten
384
Ik wil alle hyperlinks (in een bepaalde Range) via een druk op de knop kunnen printen (van de ActiveSheet).
Via onderstaande code kan ik ze al tonen, maar printen lukt me niet…
(Als de hyperlink meerdere keren bestaat, slechts één keer printen)

Code:
Sub Toon_Hyperlink()

Dim lnk As Hyperlink

For Each lnk In ActiveSheet.Range("E17:AB74").Hyperlinks
    'Toon de hyperlink
    MsgBox (lnk.Address)
Next

End Sub
 
Zet ze als tekst in een tijdelijke sheet en druk die dan af.
 
Sorry, ik denk dat ik niet duidelijk was in de vraagstelling...

Als ik op de hyperlink klik opent er een Pdf file (in andere map).
Al deze verschillende Pdf files zou ik dan willen printen.
 
Plaats dan even een voorbeeld documentje.
 
In bijlage file…
Ik veronderstel dat jullie de Hyperlinks niet kunnen tonen, deze zijn steeds zo opgebouwd:

AS_ONDH\4. Personeel\Planning\Werkorders\13230620_Banjo’s.pdf

Rode deel is altijd hetzelfde.

Groene deel is de titel van de pdf (steeds anders), de nummer van het groene deel staat altijd in de cel (waar de hyperlink achterzit)



voorbeeld.jpg

Bekijk bijlage Hyperlink.xlsm
 
Laatst bewerkt:
Dan zoiets:
Code:
Sub Toon_Hyperlink()
    Dim lnk As Hyperlink
    Dim prlnk() As String
    Dim txtlnk As String

    For Each lnk In ActiveSheet.Range("E17:AB74").Hyperlinks
        If InStr(txtlnk & "|", lnk.Address) = 0 Then
            ReDim Preserve prlnk(i)
            txtlnk = lnk.Address & "|"
            prlnk(i) = lnk.Address
            i = i + 1
        End If
    Next
    
    For i = 0 To UBound(prlnk)
        Shell "C:\Program Files (x86)\Adobe\Reader 9.0\Reader\AcroRd32.exe /t " & prlnk(i), 1
    Next i
End Sub

Wel even het pad naar de Adobe Reader (AcroRd32.exe) controleren en evt. aanpassen.
 
Laatst bewerkt:
Code:
Shell "C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe /t " & prlnk(i), 1

Heb dit al aangepast, maar krijg foutmelding...

fout.jpg
 
De melding lijkt me duidelijk.
Ik kan uiteraard niet controleren of dat opgegeven bestand wel bestaat.
Volgens je voorbeeld document gaat het om dit:
Code:
AS_ONDH\4. Personeel\Planning\Werkorders\11601553_18884 VERTIKALE BOORMACH. MAUS OP40.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\13230620_Banjo's.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11616595_19914 CNC DRAAIBANK HEYLIGENSTAEDT.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11626619_Naven Inperslijn.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11598229_23046 LABYRINT PERS 2 LINKS AAS.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11613535_LOOPKRAAN L136.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\13236267_LOOPKRAAN L136.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\13236268_LOOPKRAAN L136.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11627105_19921 BEWERKINGSCENTER HULLER HILLE.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11623802_19878 LASROBOT CLOOS BOL-RING OP65.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11623801_17955 LASROBOT CLOOS BOL-RING OP61.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11627477_04896 STRAALINRICHTING BERGER.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11627731_22018 FAMAR OP30.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11628206_22170 WASMACHINE MINOMAT FAMAR OP40.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\11620245_19904 CNC DRAAIBANK HEYLIGENSTAEDT.pdf
AS_ONDH\4. Personeel\Planning\Werkorders\13232793_Algemeen.pdf
 
Als ik op de hyperlink in de file zelf druk, gaat de PDF open.
Deze bestaan ook allemaal 100% zeker.

Kan dit iets te maken hebben met de hyperlinkbase? W:\
 
Laatst bewerkt:
Ik kan van die melding niks anders maken en die is duidelijk.
 
Maak het jezelf gemakkelijk
Vul bij Hyperlink Base bij de eigenschappen van het bestand (tabblad 'File') het volgende pad in: AS_ONDH\4. Personeel\Planning\Werkorders\

Dan hoef je in een werkblad in de hyperlink alleen nog maar de documentnaam in te voeren.

Code:
Sub M_snb_printpdf()
    For each it in selection.hyperlinks
       CreateObject("shell.application").Namespace(ThisWorkbook.BuiltinDocumentProperties("hyperlink base")).Items.Item(dir(it.address)).InvokeVerb "print"
    Next
End Sub
 
Laatst bewerkt:
Slim gezien….
Maar eerst ff voorgeschiedenis ivm hyperlinks…
Toen ik een tijd geleden de “gewone” hyperlinks wou toevoegen heb ik heel veel problemen gehad met het openen, soms werkte het, soms niet…
Uiteindelijk opgezocht en iets gevonden ivm Hyperlink Base.
Onderstaande ingegeven (link van de map)
\\eu.moederbedrijf.com\bedrijf\W: \ AS_ONDH\4. Personeel\Planning\Werkorders
Bleek niet te werken. Vanalles aan het testen geweest, bleef alleen werken bij het invullen van W:\
Alhoewel ik dacht dat AS_ONDH\4. Personeel\Planning\Werkorders\ moest werken.
Daarom geef ik hier de opmerking ivm Hyperlink Base, omdat ik daar in het verleden al problemen met heb gehad.
Nu ook al vanalles geprobeerd, maar geen resultaat.
Dus als ik W:\ ingeef, kan ik op de link klikken en opent de Pdf, maar via de macro krijg ik dan bovenstaande foutmelding (kan de file niet vinden/openen)
 
Ik vermoed dat het afzien van spaties in paden al een hoop kan schelen.

Waarom niet als hyperlink base:

Code:
W:\AS_ONDH\4.Personeel\Planning\Werkorders\

en 'hard coderen' kan natuurlijk ook nog altijd:

Code:
Sub M_snb_printpdf()
    For each it in selection.hyperlinks
       CreateObject("shell.application").Namespace("W:\AS_ONDH\4.Personeel\Planning\Werkorders\").Items.Item(dir(it.address)).InvokeVerb "print"
    Next
End Sub
 
Laatst bewerkt:
Als ik je voorstel van de Hyperink Base ingeef: Het opgegeven bestand kan niet worden geopend (via klikken op de link), lukt enkel met W:\...Raar...

Bij voorstel hard coderen, foutmelding op regel CreateObject("shell.application").Namespace("W:\AS...…….
=> Object of blokvariabele With niet ingesteld
 
Had je gezien dat ik de spatie had verwijderd ?
Heb je de paden in Drive W aangepast ?
Heb je überhaupt een gebied geselecteerd waarin zich hyperlinks bevinden ?
 
Laatst bewerkt:
Had ik allemaal gedaan…
Heb nog wel iets gevonden…
Als ik het adres neem (handmatig) van de pdf files:

\\eu.moederbedrijf.com\bedrijf\Data\AS_ONDH\4. Personeel\Planning\Werkorders\…

Als ik de hyperlink in de file zelf opendoe (via bewerken) ziet deze er zo uit:

AS_ONDH\4.%20Personeel\Planning\Werkorders\11656194_18884%20VERTIKALE%20BOORMACH.%20MAUS%20OP40.pdf

Dus ik denk als het adres vanaf AS_ONDH….begint het goed is, maar bij elk spatie komt %20 te staan.
 
Hé, had ik daarover niet al iets gezegd ?

Vervang alle spaties door underscores.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan