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

controleren van hyperlinks die ook weer geen hyperlink zijn

Status
Niet open voor verdere reacties.
Een aantal van je hyperlinks verwijst niet naar een bestand, maar naar een pagina in een bestand.
Hoe denk je die met Dir of filexists te kunnen kontroleren (nog afgezien van de vraag waarom je deze zou controleren).
Wat is de zin van deze hele exercitie ?
 
de zin is tijdens het controleren heb je links met en zonder friendly name

en nu ziet de macro alles met een friendly name als een fout
niets verwijst naar een pagina....alleen heb ik de frienly name "PAGE 14" genoemd :o

de bedoeling is dat ik met deze macro honderden links kan nakijken of de locatie er nog is..
want het gebeurd nog al is dat iemand een bestand verplaatst en zo kan ik achterhalen welk bestand er niet meer staat....
 
Wat bedoel je met 'friendly name' ?
Waar heb je 'Page 14' staan ?
Welke hyperlinks hebben volgens jou een 'friendly name' en welke niet ?
 
Hey bedankt dat je mij probeerd te helpen :thumb:

1) met friendly name deze ziethij als een kapotte link terwijl hij in excel wel werkt...
=HYPERLINK("\\Xena\sil\gegevens\test.pdf","Page 15")


bij deze link exact de zelfde maar zonder friendly name ziet hij dat het bestand bestaad.
2) =HYPERLINK("\\Xena\sil\\gegevens\test.pdf")

de code nogmaals

Code:
Sub linkcheck()
  Dim strLink As String
  Dim cl As Range
  Dim fso As New FileSystemObject
  For Each cl In Selection.Cells.SpecialCells(xlCellTypeFormulas)
    If InStr(cl.Formula, "HYPERLINK") > 0 Then
           strLink = Replace(cl.Formula, "=HYPERLINK(", "")
               strLink = Mid(strLink, 2, Len(strLink) - 3)
      If Not fso.FileExists(strLink) Then
        MsgBox "De hyperlink  " & strLink & " in " & cl.Row & " - " & [COLOR="Blue"]cl.Column [/COLOR]& " bestaat niet"
      End If
    End If
  Next
  MsgBox "Checked All"
End Sub

ook heb ik een probleem met de msgbox
nu geeft hij als column weer 44 maar de indeling is in letters dus zou AR moeten zijn
hoe ik dat in letters weer geef weet ik niet maar hij mag ook ipv de colum cijfer/letter
de tekst uit de eerste cel van de column weergeven want dat is de titel van de column
 
Code:
Sub linkcheck()
  For Each cl In sheets(1).Cells.SpecialCells(xlCellTypeFormulas)
    If InStr(cl.Formula, "HYPERLINK") > 0 Then
      If Dir(Join(Filter(Split(cl.Formula, Chr(34)), "\"), ""))="" Then cl.interior.color=vbred
    End If
  Next
End Sub
 
Laatst bewerkt:
Code:
Sub linkcheck()
  For Each cl In Selection.Cells.SpecialCells(xlCellTypeFormulas)
    If InStr(cl.Formula, "HYPERLINK") > 0 Then
      If Dir(Join(Filter(Split(cl.Formula, Chr(34)), "\"), ""))="" Then MsgBox "Het bestand van de koppeling in  " & cl.Address & " bestaat niet"
    End If
  Next
End Sub

WOW super bedankt deze doet het zoals ik wil met of zonder friendly name maakt niet uit :)

de laatste vraag :o

Then MsgBox "Het bestand van de koppeling in " & cl.Address & " bestaat niet"


cl.Address wil ik dan anders hebben :o
cl.row & de tekst uit de eerste cel uit de column van de active.cel :shocked:

want dat is net wat makkelijker maar echt super bedankt want je marcro werkt zoals ik wil :thumb:
 
Vorige code aangepast.
Ik vermijd bij voorkeur 'interaktieve' macro's.
Daarom een markering van alle niet-funktionerende koppelingen.

PS. Ik hoop dat je ook de werking van de macro tracht te begrijpen.
 
Laatst bewerkt:
het kleuren er van is misschien ook wel beter :)

ik zelf snap van jouw formule nog maar een deel de oude snapte ik wel ;)
maar ik zelf werk nog maar pas met macro's in excel dus al die functies etc snap ik nog niet helemaal :confused:

hartelijk bedankt :thumb:

Gr Tom
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan