2016-09-12 12 views
0

テーブルの要素に浮動小数点:leftまたはfloat:rightプロパティがあるかどうかを調べて、どの要素が関連しているかを調べます。残念ながらVBA - Internet ExplorerでCSSフォーマットの値を返す

.getAttribute("Style")

は、インラインHTMLスタイルではなく、CSSのために働きます。 getAttributeから[object MSStyleCSSProperties]が返されるため、以下のコードは機能しません。

Dim htmlele As IHTMLElement 
Dim PopUpWindow As Object 

For Each htmlele In PopUpWindow.document.getElementsByTagName("tr") 
    If InStr(htmlele.getAttribute("Style"), "float: left;") <> 0 Then 
     'do stuff 
    End if 
Next htmlele 

VBAでCSSを使用する方法はありますか?

答えて

0

htmlele.style.floatをご覧ください。要素のすべてのスタイルはstyle objectから利用できます。

また、currentStyleruntimeStyleのプロパティ(微妙な違いがありますので、ドキュメントをチェックしてください)があります。あなたが扱っているオブジェクトによってどのバージョンのIHTMLElementインターフェイスが実装されているかに応じて、利用可能かどうかはわかります。

runtimeStyleおよびcurrentStyleは、IHTMLElement2にあり、リストはIHTMLElement8になります。 VBAデバッガを使用して、使用できるプロパティと期待値が含まれているかどうかを確認します。

+0

CurrentStyleのみが埋め込みスタイルシートで動作するように見えますが、他のソリューションはすべて説明とテストのインラインです。しかし私は、Microsoftの例の "IHTMLCurrentStyle :: color"がVBAコードの構文にどのように変換できるかを理解することはできません。 –

+0

これはおそらく決して翻訳されていません。私はあなたの質問に何が関係しているのかは分かりません。それは浮きについてでした。 – Tomalak

+0

私は色の代わりに "float"を使用するとfloatを返すことを期待していましたが、使用するVBAコードの例はありません。リストされたメソッドを使用してデバッグする間に、 CSSフォーマットされたオブジェクトの場合は「なし」です。 –

関連する問題