Microsoft Excel

Herbers Excel/VBA-Archiv

Excel Daten in HTML Formular übertragen

Betrifft: Excel Daten in HTML Formular übertragen von: Johannes
Geschrieben am: 21.08.2008 13:48:57

Hallo,

ich bin über einen Thread in einem anderen Forum auf dieses Forum und zwei Threads gestoßen worden, bei denen sich besonders der User Tino als Super-Hilfe herauskristalisiert hat (und dafür ziemlich angeblafft wurde...), weshalb ich mir erhoffe hier bzgl. meines Problems Hilfe zu erhalten *zutinoschiel ;)*

Zunächst die genannten Threads:
Mein erster Thread im MS-Office-Forum
http://www.ms-office-forum.net/forum/showthread.php?t=237086

Text aus Zelle in Internet Seite
https://www.herber.de/forum/archiv/996to1000/t999890.htm

IE Schaltfläche
https://www.herber.de/forum/messages/1002352.html

Mittlerweile bin ich durch die oben genannten Threads auch schon recht weit gekommen. (und an dieser Stelle kopiere ich aus meinem anderen Thread. Es sei mir verziehen bitte :)) Sprich: Die entsprechende Seite wird angerufen und die Zeilen auch ausgefüllt. Nun habe ich jedoch folgendes Problem: Die sachen müssen variabel sein. D.h.: Es sollen immer die Inhalte der ausgewählten Zeile eingetragen werden. Leider kann ich kein VBA. Dafür aber ein wenig PHP. Ich habe also gedacht, dass ich das über Variablen machen muss. Der Anfang geht auch schonmal, sodass Daten aus einer von mir angegebenen Zelle rüberkopiert werden. Doch wie lass ich das Skript die Daten aus einer von mir markierten Zeile (mit der Maus) als Variable übernehmen?

Ich habe darüber hinaus noch das Problem, dass die Zeile ,,Adresse" sowohl Strasse, als auch Hausnummer enthält. Das ist bei dem Online-Formular nicht der Fall. Dort sind die beiden Sachen aufgesplittet. Kann mir jemand erklären, wie ich das in VBA parse und in zwei Variablen aufsplitte?

Mein Code bisher:



Sub WebseiteAusfüllen()
Dim appIE As Object
Set appIE = CreateObject("InternetExplorer.application")
appIE.Visible = True
appIE.Navigate "https://www.xxx.de"

 
 While Not appIE.ReadyState = 4 'Warte auf Webseite
    DoEvents
  Wend


Dim name$
name = ActiveSheet.Cells(1, 1).Value

Dim surname$
surname = ActiveSheet.Cells(1, 2).Value


appIE.Document.all.ContentPanel_tbx_firstname.Value = name
appIE.Document.all.ContentPanel_tbx_surname.Value = surname
appIE.Document.all.ContentPanel_tbx_addition.Value = "C1"
appIE.Document.all.ContentPanel_tbx_street.Value = "Strasse"
appIE.Document.all.ContentPanel_tbx_housenumber.Value = "23"
appIE.Document.all.ContentPanel_tbx_zipcode.Value = "54813"
appIE.Document.all.ContentPanel_tbx_town.Value = "Stadt"
appIE.Document.all.ContentPanel_tbx_cellphone.Value = "017056465456"
appIE.Document.all.ContentPanel_tbx_landphone.Value = "045612344"


Set appIE = Nothing
End Sub


  

Betrifft: AW: Excel Daten in HTML Formular übertragen von: Ramses
Geschrieben am: 21.08.2008 13:57:27

Hallo

Da brauchst du keine variablen

appIE.Document.all.ContentPanel_tbx_firstname.Value = Range("Zelle_Mit_Name").Text

bzw.

appIE.Document.all.ContentPanel_tbx_firstname.Value = Range("A1").Text

usw.

Gruss Rainer


  

Betrifft: AW: Excel Daten in HTML Formular übertragen von: Johannes
Geschrieben am: 21.08.2008 15:01:44

Hallo Rainer,

danke dir :) Das geht. Aber das ist leider immernoch sehr star. Kann ich das jicht irgendwie so einrichten, dass er die Zeilenzahl aus meiner Auswahl herausfiltert?


  

Betrifft: AW: Excel Daten in HTML Formular übertragen von: Tino
Geschrieben am: 21.08.2008 15:32:22

Hallo,
hier mal ein Beispiel.

ActiveCell.Row gibt die Zeilennummer zurück, in der Du dich befindest.
Der Buchstabe die entsprechende Spalte.

appIE.Document.all.ContentPanel_tbx_firstname.Value = Cells(ActiveCell.Row, "A")
appIE.Document.all.ContentPanel_tbx_surname.Value = Cells(ActiveCell.Row, "B")
appIE.Document.all.ContentPanel_tbx_addition.Value = Cells(ActiveCell.Row, "C")
appIE.Document.all.ContentPanel_tbx_street.Value = Cells(ActiveCell.Row, "D")
appIE.Document.all.ContentPanel_tbx_housenumber.Value = Cells(ActiveCell.Row, "E")
appIE.Document.all.ContentPanel_tbx_zipcode.Value = Cells(ActiveCell.Row, "F")
appIE.Document.all.ContentPanel_tbx_town.Value = Cells(ActiveCell.Row, "G")
appIE.Document.all.ContentPanel_tbx_cellphone.Value = Cells(ActiveCell.Row, "H")
appIE.Document.all.ContentPanel_tbx_landphone.Value = Cells(ActiveCell.Row, "I")



Ist es so von dir gewollt?

Gruß Tino


  

Betrifft: AW: Excel Daten in HTML Formular übertragen von: Johannes
Geschrieben am: 21.08.2008 16:13:06

JAAA! Wunderbar :) Klappt jetzt alles. Ich danke dir vielmals!

Jetzt muss ich das ganze noch parsen und dann passt das :)


  

Betrifft: AW: Excel Daten in HTML Formular übertragen von: Tino
Geschrieben am: 21.08.2008 17:22:27

Hallo,
müsste so gehen.

Dim strHausnummer As String
Dim strStrasse As String

'ist zwischen Strassennamen und der Nummer ein Leerzeichen gehts so
With Cells(ActiveCell.Row, "D")
strStrasse = Left$(.Value, InStrRev(.Value, " ") - 1)
strHausnummer = Right$(.Value, Len(.Value) - InStrRev(.Value, " "))
End With
 
 appIE.Document.all.ContentPanel_tbx_firstname.Value = Cells(ActiveCell.Row, "A")
 appIE.Document.all.ContentPanel_tbx_surname.Value = Cells(ActiveCell.Row, "B")
 appIE.Document.all.ContentPanel_tbx_addition.Value = Cells(ActiveCell.Row, "C")
 appIE.Document.all.ContentPanel_tbx_street.Value = strStrasse
 appIE.Document.all.ContentPanel_tbx_housenumber.Value = strHausnummer
 appIE.Document.all.ContentPanel_tbx_zipcode.Value = Cells(ActiveCell.Row, "E")
 appIE.Document.all.ContentPanel_tbx_town.Value = Cells(ActiveCell.Row, "F")
 appIE.Document.all.ContentPanel_tbx_cellphone.Value = Cells(ActiveCell.Row, "G")
 appIE.Document.all.ContentPanel_tbx_landphone.Value = Cells(ActiveCell.Row, "H")




Gruß Tino


  

Betrifft: AW: Excel Daten in HTML Formular übertragen von: Johannes
Geschrieben am: 21.08.2008 17:30:30

Du bist ein Schatz. Vielen Dank!


 

Beiträge aus den Excel-Beispielen zum Thema "Excel Daten in HTML Formular übertragen"