Bestimmtes Formular automatisch ausfüllen mit Excel als Datenquelle.
Hallo ich suche ein Tool welches ein bestimmtes Webformular ausfüllt und absendet.
Die Daten die eingegeben werden sollen sind in einer Excel Tabelle. Pro Zeile sozusagen ein Datensatz fürs Formular.
Habt ihr eine Idee was man da machen kann?
Vielen Dank euch schonmal.
Die Daten die eingegeben werden sollen sind in einer Excel Tabelle. Pro Zeile sozusagen ein Datensatz fürs Formular.
Habt ihr eine Idee was man da machen kann?
Vielen Dank euch schonmal.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 234447
Url: https://administrator.de/contentid/234447
Ausgedruckt am: 04.11.2024 um 22:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo ey-jo,
ich mache sowas mit AutoIT und der IE-Automatisierung. Hier gibt es eine Funktionsübersicht, die Funktionen die mit _IE beginnen sind für dein Vorhaben zu verwenden. Eine Verbindung zu Excel lässt sich damit auch Problemlos herstellen.
Wenn du mal den Link zum Formular und die Positionierung der Daten in Excel postest kann ich dir dazu mal ein Beispiel zusammenstellen, wenn du möchtest ..
Grüße Uwe
ich mache sowas mit AutoIT und der IE-Automatisierung. Hier gibt es eine Funktionsübersicht, die Funktionen die mit _IE beginnen sind für dein Vorhaben zu verwenden. Eine Verbindung zu Excel lässt sich damit auch Problemlos herstellen.
Wenn du mal den Link zum Formular und die Positionierung der Daten in Excel postest kann ich dir dazu mal ein Beispiel zusammenstellen, wenn du möchtest ..
Grüße Uwe
sicher kein Problem geht alles, man muss halt ein wenig vom programmieren verstehen ...
kannst du mal ein Link zum Formular posten ??
das hier ist z.B. eine beispielhafte Automatisierung des Logins von Administrator.de:
kannst du mal ein Link zum Formular posten ??
das hier ist z.B. eine beispielhafte Automatisierung des Logins von Administrator.de:
#NoTrayIcon
#include <ie.au3>
$username = InputBox("Username","Bitte geben Sie den Benutzernamen von Administrator.de ein")
$pass = InputBox("Passwort","Bitte geben Sie das Password von Administrator.de ein","","*")
$objIE = _IECreate("https://administrator.de/login/",0,1,1)
$objInputs = _IETagNameGetCollection($objIE,"input")
for $obj in $objInputs
if $obj.Name = "login" then
$objNickname = $obj
EndIf
if $obj.Name = "password" then
$objPass = $obj
EndIf
if $obj.Name = "login_button" then
$objSubmit = $obj
EndIf
Next
_IEFormElementSetValue($objNickname,$username)
_IEFormElementSetValue($objPass,$pass)
_IEAction($objSubmit,"click")
_IELoadWait($objIE,300)
Also ich stelle jetzt mal die Frage nach dem eigentlichen Sinn dahinter.
Wenn diese Daten in eine MySQL-Datenbank sollen, so bietet beispielsweise der XAMPP-PHPMyAdmin die Möglichkeit, eine Excel-Datei direkt einzulesen.
Damit könnte man sich die Automatisierung sparen.
Ansonsten gibt es noch AHK-Script, womit man für annährend alle Programme alle möglichen Maus- und Tastaturevents machen kann.
Was ist denn das eigentliche Ziel hinter dieser Aktion??
Wenn diese Daten in eine MySQL-Datenbank sollen, so bietet beispielsweise der XAMPP-PHPMyAdmin die Möglichkeit, eine Excel-Datei direkt einzulesen.
Damit könnte man sich die Automatisierung sparen.
Ansonsten gibt es noch AHK-Script, womit man für annährend alle Programme alle möglichen Maus- und Tastaturevents machen kann.
Was ist denn das eigentliche Ziel hinter dieser Aktion??
Zitat von @ey-jo:
Ne geht leider nicht ist was firmeninternes. ich wollte schauen ob man so einige Arbeitsschritte sparen kann.
und dein Excel-Sheet kannst du damit Beispielsweise so Zeile für Zeile auslesen, das ganze dann noch jeweils an das Formular geschickt fertig ist die Kiste. dazu müsstest du aber den Quelltext der Seite analysieren, von selber geht das nicht.Ne geht leider nicht ist was firmeninternes. ich wollte schauen ob man so einige Arbeitsschritte sparen kann.
; Pfad zum Excel-File
$excelmappe = "E:\Mappe.xlsx"
; Excel-ComObject erzeugen
$objExcel = ObjCreate("Excel.Application")
; Excel anzeigen
$objExcel.Visible = True
;Arbeitsmappe öffnen
$wb = $objExcel.Workbooks.Open($excelmappe)
; erstes Worksheet
$ws = $wb.Worksheets(1)
; Anfangszelle der Daten (wenn erste Zeile Überschriften enthält)
$rngStart = $ws.Range("A2")
; Endzelle ermitteln
$rngEnd = $rngStart.End(-4121)
; für jede Zeile im Bereich
for $cell in $ws.Range($rngStart,$rngEnd)
$anrede = $cell.Value
$vorname = $cell.Offset(0,1).Value
$name = $cell.Offset(0,2).Value
$strasse = $cell.Offset(0,3).Value
$hausnummer = $cell.Offset(0,4).Value
$plz = $cell.Offset(0,5).Value
$ort = $cell.Offset(0,6).Value
$geburtsdatum = $cell.Offset(0,7).Text
$telefon = $cell.Offset(0,8).Value
$mobil = $cell.Offset(0,9).Value
$email = $cell.Offset(0,10).Value
$kommentar = $cell.Offset(0,11).Value
; Als Beispiel nur dem Namen jeder Zeile anzeigen lassen
msgbox(0,"",$name)
Next