Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
448to452
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
448to452
448to452
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

MS Internet Controls schlagen fehl

MS Internet Controls schlagen fehl
07.07.2004 13:25:40
Folker
Hallo,
ich möchte in Excel die Controls einer Internet Explorer Seite auslesen und bearbeiten. Dazu habe ich schon einen passenden Weg gefunden, der auf meinem privaten PC funktioniert, bei mir in der Arbeit aber nicht.
Es kommt immer die Fehlermeldung in der MsgBox Zeile: Objekt unterstützt diese Eigenschaft oder Methode nicht, also ob er die dazugehörige Referenz nicht findet. Ich habe sowohl die "Microsoft Internet Controls" als auch die "Microsoft HTML Object Library" aktiviert. Stimmt da irgendetwas mit den DLLs nicht oder hat jemand eine Ide woran das liegen kann?
objIE.Document.all.Item(i).innerText funktioniert. Value und Name z.B. nicht.
Vielen Dank
Folker

Private Sub openIE(ByVal address)
Dim objIE As InternetExplorer
Set objIE = New InternetExplorer
With objIE
.Visible = True
.Navigate address
End With
Do Until objIE.ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
For i = 0 To objIE.Document.all.Length - 1
MsgBox objIE.Document.all.Item(i).Value & " / " & objIE.Document.all.Item(i).Name
Next
End Sub

Sub IEAddress()
Call openIE("https://www.google.de")
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MS Internet Controls schlagen fehl
08.07.2004 17:51:34
Otto
Hallo Volker,
Meine Testumgebung: Excel 9.0 SR-1, Multilingual unter Windows 2000 SP-4
das funktioniert nicht, da Value und Name nicht bei jedem NodeName definiert sind. Ich selbst nutze:

Sub AnlistenDokument(objDokument As Object)
Dim intAnzahl As Integer
Dim intCounter As Integer
Dim intZeile As Integer
Dim strNode As String
Dim wksDokument As Worksheet
ThisWorkbook.Worksheets("Dokument").Copy
Set wksDokument = ActiveSheet
intAnzahl = objDokument.all.Length
For intZeile = 0 To intAnzahl - 1
wksDokument.Cells(intZeile + 2, 1).Value = intZeile
With objDokument.all(intZeile)
strNode = .nodeName
wksDokument.Cells(intZeile + 2, 2).Value = strNode
Select Case strNode
Case "IMG", "TD", "INPUT", "FORM", "SELECT", "OPTION"
wksDokument.Cells(intZeile + 2, 3).Value = .innerHTML
wksDokument.Cells(intZeile + 2, 4).Value = .outerHTML
Case "TABLE"
wksDokument.Cells(intZeile + 2, 3).Value = .innerText
wksDokument.Cells(intZeile + 2, 4).Value = .outerHTML
Case "A"
wksDokument.Cells(intZeile + 2, 3).Value = .innerHTML
wksDokument.Cells(intZeile + 2, 4).Value = .outerHTML
If .all.Length = 1 Then
On Error Resume Next
wksDokument.Cells(intZeile + 2, 5).Value = .all(0).alt
On Error GoTo 0
ElseIf .all.Length >= 2 Then
For intCounter = 0 To .all.Length - 1
wksDokument.Cells(intZeile + 2, 5 + intCounter).Value = _
.all(intCounter).nodeName
Next intCounter
ElseIf .all.Length > 0 Then
Stop
End If
Case Else
End Select
End With
Next intZeile
With wksDokument
.Columns("C:E").ColumnWidth = 45
With .Parent.Windows(1)
.SplitRow = 1
.FreezePanes = True
End With
.Cells.EntireRow.AutoFit
End With
End Sub

Gruß Otto
Anzeige
AW: MS Internet Controls schlagen fehl
08.07.2004 20:41:58
Folker
Hallo Otto,
danke für den Code. Eigentich will ich auf einer Seite Daten (Login, PW) in Textfelder schreiben. Leider finde ich mit .value diese Felder nicht und kann somit auch nichts reinschreiben. Gibt es noch eine andere Möglichkeit Textfelder zu finden?
Momentan schreibe ich die Werte mit sendKey rein, fände es aber sicherer die Felder direkt zu addressieren.
Gruß Folker
AW: MS Internet Controls schlagen fehl
09.07.2004 00:25:39
Otto
Hallo Volker,
Meine Testumgebung: Excel 9.0 SR-1, Multilingual unter Windows 2000 SP-4
Ein Beispiel, wie ich userid & Password eingebe, findest Du in dem Beispiel, das ich in folgendem Thread geposted habe:
sieh Dir dazu im Archiv WebBrowser1.ExecWB stirbt, da OleInitialize fehlt (445000#445077) an.
Die entsprechende Felder habe ich mit der Prozedur AnlistenDokument gefunden. Dabei sind die INPUT-Felder relevant.
Das Problem aus dem obigen Thread ist für XL 2000 noch nicht gelöst.
Gruß Otto
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige