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

text halen uit html code om in textbox te zetten

Status
Niet open voor verdere reacties.

bjornesto

Gebruiker
Lid geworden
16 apr 2012
Berichten
201
Ik heb een code die werkt
Deze code zoekt op internet naar een persoon
Vervolgens moet de user klikken op een knop en dan gaat hij in de userform na een bepaalde tijd alle managers in 1 tekstbox zetten.

Code:
Sub test()
Dim myrange As Range
Dim IE As Object
Set IE = CreateObject("Internetexplorer.application")

IE.navigate "www.test.be"
IE.Visible = True

While IE.Busy
DoEvents
Wend
'On Error GoTo 1
'geeft van
IE.document.all("ctl00_ucPeopleSearch_txtPeopleSearch").Value = Parking.TextBox1.Value
IE.document.all("ctl00$ucPeopleSearch$btnPeopleSearch").Click

'Dim IE As New InternetExplorer
'IE.navigate "http://intouch.toyota-europe.com//pages/advancedpeople.aspx?"
'IE.Visible = True
Do
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
Application.Wait (Now() + TimeValue("00:00:020")) ' For internal page refresh or loading
Dim doc As HTMLDocument 'variable for document or data which need to be extracted out of webpage
Set doc = IE.document
Dim dd As Variant
Dim dd1 As Variant
dd = doc.getElementsByClassName("managers")(0).innerText
'dd1 = doc.getElementsByTagName("permanent").Item(1).innerText
With Parking
TextBox2.Value = dd
End With
End Sub

Graag zou ik nu van iedere manager specifiek zijn naam in een andere textbox willen zetten op een userform in excel

Hieronder is de code op het internet.
Ik heb al gezocht op li class maar telkens krijg ik foutmelding

HTML:
<DIV class=managers data-bind='template: "managerTemplate"' __ko__1461871669991="ko0"><UL style="LEFT: 4px" jQuery15103771393377728458="10">
<LI class=Permanent onclick="javascript:GetUserProfile('COMMON\\APF4377', '00018870');">
<TABLE>
<TBODY>
<TR>
<TD><IMG class=thumb alt="Director name" src=""></TD>
<TD vAlign=top>
<H2>Director name</H2>
<H3>VICE PRESIDENT</H3><SPAN>hr &amp; administration (V0001)</SPAN></TD></TR></TBODY></TABLE></LI>
<LI class=Permanent onclick="javascript:GetUserProfile('COMMON\\FBR0258', '00027932');">
<TABLE>
<TBODY>
<TR>
<TD><IMG class=thumb alt="www.test.be"></TD>
<TD vAlign=top>
<H2>Senior manager name</H2>
<H3>SENIOR MANAGER</H3><SPAN>facility mgmt, health &amp;safety (VA220)</SPAN></TD></TR></TBODY></TABLE></LI>
<LI class=Permanent onclick="javascript:GetUserProfile('COMMON\\JPA0089', '00024510');">
<TABLE>
<TBODY>
<TR>
<TD><IMG class=thumb alt="Manager" src="www.test.be"></TD>
<TD vAlign=top>
<H2>Manager</H2>
<H3>MANAGER</H3><SPAN>facilities / maintenance (VA224)</SPAN></TD></TR></TBODY></TABLE></LI></UL></DIV>
 
Beste

Heb het gevonden

Hieronder is de code

Code:
Sub test()
Dim myrange As Range
Dim IE As Object
Set IE = CreateObject("Internetexplorer.application")

'opent website
IE.navigate "www.microsoft.com" 'aanpassen indien nodig
IE.Visible = True

While IE.Busy
DoEvents
Wend

' gaat waarde van userform in textbox zetten op de website
IE.document.all("ctl00_ucPeopleSearch_txtPeopleSearch").Value = Parking.TextBox1.Value

' Klikt vervolgens op de button om verder te gaan naar een volgende pagina
IE.document.all("ctl00$ucPeopleSearch$btnPeopleSearch").Click

'code stopt 10 seconden omwille van dat er soms meerdere namen kunnen voorkomen
'na 10 seconden gaat hij code verder ontwikkelen
Application.Wait (Now + TimeValue("00:00:10"))

Dim doc As HTMLDocument 'variable for document or data which need to be extracted out of webpage
Set doc = IE.document
Set classColl = doc.getElementsByClassName("managers")
Set imgTgt = classColl(0).getElementsByTagName("img")

Do
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
Application.Wait (Now() + TimeValue("00:00:01")) ' For internal page refresh or loading

Parking.TextBox2.Value = imgTgt(2).getAttribute("alt")
Parking.TextBox3.Value = imgTgt(1).getAttribute("alt")
Parking.TextBox4.Value = imgTgt(0).getAttribute("alt")

End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan