Het openen van sites in een browser

Steve heeft een bereik van cellen (A1: A10) die bevatten website adressen, bijvoorbeeld www.example.com. Hij vraagt ​​of het mogelijk binnen een macro, elk van deze adressen openen in een browser ineens in aparte tabs browser.

Er zijn een paar manieren waarop u kunt deze taak benaderen, en welke je kiest, hangt grotendeels af van de aard van de gegevens in het werkblad. Als de cellen bevatten actieve hyperlinks (degenen die als je er op klikt, wordt het adres geopend in een browser), dan kunt u een vrij eenvoudige macro gebruiken:

Sub FollowHyperlinks1 ()
Dim mijnBereik als Waaier
Dim hl als hyperlink

On Error Resume Next
Stel mijnBereik = Range ("A1: A10")
Voor Elke hl In MyRange.Hyperlinks
hl.Follow
Volgende hl
End Sub

De macro ziet er gewoon helemaal de hyperlinks in het bereik van A1: A10 en maakt gebruik van de follow methode om elk van hen te openen in uw standaardbrowser. Vanwege de manier waarop het besturingssysteem overdraagt ​​gegevens uit Excel in uw browser, is het een goed idee om uw browser te openen voordat u de macro uitvoert. De reden hiervoor is dat, bij het testen, vonden we dat u daadwerkelijk kan uiteindelijk twee exemplaren van de browser, enkele adressen openen in één geval en enkele in de andere. Dit gebeurt blijkbaar omdat de vertraging bij het openen van het eerste exemplaar van de browser. Als de browser is geopend voordat de macro wordt uitgevoerd, dan is er geen vertraging en elk adres opent in een verschillende tabel van hetzelfde browservenster.

Als de adressen in uw werkblad niet kunnen zijn actieve hyperlinks, dan kun je niet vertrouwen op het gebruik van de Hyperlinks collectie voor het bereik. In plaats daarvan moet je kijken naar de waarde van elke cel in het bereik:

Sub FollowHyperlinks2 ()
Dim mijnBereik als Waaier
Dim cel als Waaier
Dim Stemp als Koord

On Error Resume Next
Stel mijnBereik = Range ("A1: A10")
Voor elke cel in mijnBereik
Stemp = cell.Value
ThisWorkbook.FollowHyperlink _
Adres: = Stemp
Volgende cel
End Sub

Deze aanpak maakt gebruik van de FollowHyperlink methode om het adres te laden in de Stemp variabele. In dit geval maakt het niet uit of de inhoud van de cellen actief hyperlinks of niet; de code probeert nog steeds om ze te openen in een browser.

Tot slot, als uw gegevens niet volledig gekwalificeerde adressen kunnen bevatten, dan zul je nodig hebt om een ​​andere aanpak te gebruiken, nog steeds. Bijvoorbeeld, Steve meldden dat adressen zoals www.example.com in het werkblad, maar zo'n adres zal niet werken met de voorbeelden tot nu toe. Als uw gegevens ontbreken http: // aan het begin (of een variant, zoals https: //), dan zal de code niet het adres in de browser te openen. In uw gegevens heeft deze eigenaardigheid, dan is een kleine wijziging aan de macro in orde is:

Sub FollowHyperlinks3 ()
Dim mijnBereik als Waaier
Dim cel als Waaier
Dim Stemp als Koord

On Error Resume Next
Stel mijnBereik = Range ("A1: A10")
Voor elke cel in mijnBereik
Stemp = cell.Value
Als InStr (Stemp, ": //") = 0 Then
Stemp = "http: //" & Stemp
End If
ThisWorkbook.FollowHyperlink _
Adres: = Stemp
Volgende cel
End Sub

In dit voorbeeld onderzoekt de inhoud van STEMP te zien of het de tekens "//" daarin. Zo niet, dan het prefix http: // wordt toegevoegd aan de celinhoud en Excel probeert de FollowHyperlink methode om de gewijzigde adres openen.

ExcelTips is uw bron voor kosteneffectieve Microsoft Excel training. Deze tip (11.413) is van toepassing op Microsoft Excel 97, 2000, 2002 en 2003. U kunt een versie van deze tip voor de ribbon-interface van Excel (Excel 2007 en later) vindt u hier: Het openen van sites in een browser.


© 2019 Quilcedacarvers.com | Contact us: webmaster# quilcedacarvers.com