2017-05-27 24 views
-1

私はプログラミングの分野では新しいです。getelement in excel VBA

私は、下のhtmlコードから有効期限(30/Nov/2017)を抽出するために、excel vbaのgetelementのコードを書く方法を知っています。

コードを書いてたくさん試しましたが、F8は私のExcel VBAで動作していませんでした。

だから私はあなたたちの助けを求めています。

</TABLE> 
</TD> 
<TD></TD></TR> 
<TR><TD></TD> 
<TD COLSPAN=3 CLASS='subheader2' ALIGN='LEFT'><SPAN ID='spanLicense'CLASS='showHide' onMouseOver="this.style.cursor='pointer';" onMouseOut="this.style.cursor='auto';" onClick ="ShowHideDetails('license');">-</SPAN>&nbsp;License Details</TD> 
<TD></TD></TR> 
<TR><TD></TD> 
<TD COLSPAN=3 ALIGN='right'> 
<div id='divLicense' name='divLicense' style = 'display:none'><table border=0 cellpadding=0 cellspacing=0 align='center'></table></div>&nbsp;&nbsp;|&nbsp;<a href='#spanBasic'>Top</a>&nbsp;|&nbsp;<a HREF='#spanBottom'>Bottom</a></TD> 
<TD></TD></TR> 
<TR><TD></TD> 
<TD COLSPAN=3 CLASS = 'hline'>&nbsp;</TD> 
<TD></TD></TR> 
<TR ID='trLicenseInfoContainer'><TD></TD> 
<TD COLSPAN=3> 
<TABLE width='100%' CELLSPACING='0' BORDER='0' CELLPADDING='2' ALIGN='CENTER'> 
<TR> 
<TD WIDTH='24%'></TD> 
<TD WIDTH='1%'></TD> 
<TD WIDTH='75%'></TD> 
</TR> 
<TR> 
<TD ALIGN='LEFT' CLASS=odd>Issue date</TD> 
<TD ALIGN='LEFT' CLASS=odd>:</TD> 
<TD ALIGN='LEFT' CLASS=odd>27-May-2017 02:34:00 PM</TD> 
</TR> 
<TR> 
<TD ALIGN='LEFT' CLASS=even>Expiry date</TD> 
<TD ALIGN='LEFT' CLASS=even>:</TD> 
<TD ALIGN='LEFT' CLASS=even></TD> 
</TR> 
<TR> 
<TD ALIGN='LEFT' CLASS=odd>Tally Software Services subscription</TD> 
<TD ALIGN='LEFT' CLASS=odd>:</TD> 
<TD ALIGN='LEFT' CLASS=odd>Active (Expires on ***30-Nov-2017***)&nbsp;&nbsp;<a href = 'javascript:;' onclick = 'renewTSS(200203221,200203221,29514);' style='color:green' >Renew TSS</a></TD> 
</TR> 
<TR> 
<TD ALIGN='LEFT' CLASS=even>XBRL subscription</TD> 
<TD ALIGN='LEFT' CLASS=even>:</TD> 
<TD ALIGN='LEFT' CLASS=even>Expired on 31-Mar-2016</TD> 
</TR> 
<TR> 
<TD ALIGN='LEFT' CLASS=odd>Offline Limit</TD> 
<TD ALIGN='LEFT' CLASS=odd>:</TD> 
<TD ALIGN='LEFT' CLASS=odd>30</TD> 
</TR> 
<TR> 
<TD ALIGN='LEFT' CLASS=even>TVP</TD> 
<TD ALIGN='LEFT' CLASS=even>:</TD> 
<TD ALIGN='LEFT' CLASS=even>Expired on 31-Oct-2007</TD> 
</TR> 
</TABLE> 
+0

このデータはExcelシートにありますか? plsはその優れた画像を投稿します。 –

答えて

0

これを試すことができますか?

Sub Macro1() 

Dim TheDate As String 
Dim StartLoc As String 

Set ie = CreateObject("InternetExplorer.application") 


With ie 
    .Visible = True 
    .navigate "https://URL_to_naviagte_to" 

' Wait for the page to fully load; you can't do anything if the page is not fully loaded 
Do While .Busy Or _ 
    .ReadyState <> 4 
    DoEvents 
Loop 


' Possible Solution # 1 
' Find the date string in the page 
TheDate = "***" 
StartLoc = InStr(1, ie.document.body.innerhtml, TheDate) 
     GoOver = Mid(span.innerhtml, StartLoc + 3, 11) 

End Sub 
+0

ありがとう、私は質問をしたと思う私はdidnot要求を満たして私はそれを、私はWebページからの有効期限を抽出する必要があります製品のライセンス番号のセットがあります。 getelementbytagname( "td")を使用すると、1つ以上の要素がタグ "td"と一緒に存在します。 getelementbyclassname( "odd")を使用すると、classnameが "odd"の要素が2つ以上あります。したがって、私は要素をxpath // * [@ id = "trLicenseInfoContainer"]/td [2]/table/tbody/tr [4]/tr [3]を使用して取得することを考えました。 vba excel doesnotはxpath要素を得るための組み込みメソッドを持っているので、私はどのようにそれを行うのですか? –