Hallo Zusammen,
Da ich mich nun schon eine ganze Weile mit der Thematik beschäftige, aber gerade überhaupt nicht weiterkomme, hoffe ich, ihr könnt mir helfen.
Ich habe mir ein VBScript geschrieben, mit welchem ich Daten in ein Excel Sheet eintragen kann.
Soweit funktioniert das auch problemlos. Da ich aber bei zwei Eingaben gerne ein DropDown Menu hätte und dies mit VBScript nicht ordentlich zu realisieren ist, habe ich mich für eine HTML-Applikation entschieden. Das Grundgerüst steht auch schon. Nur habe ich nun das Problem den restlichen VBScript Code in die hta-File so einzufügen, dass es auch funktioniert.
Hier mal mein VBScript:
Hier hier ist meine bisherige hta-File:
Also das VBScript läuft tadellos. Und die hta-File bisher auch. Nun würde ich gerne die Funktionen aus dem Script in die hta-File übertragen. Für euch Spezialisten bestimmt ein Kinderspiel. Oder?
Vorab schon mal Danke für eure Hilfe.
Freundliche Grüße
p41n
Da ich mich nun schon eine ganze Weile mit der Thematik beschäftige, aber gerade überhaupt nicht weiterkomme, hoffe ich, ihr könnt mir helfen.
Ich habe mir ein VBScript geschrieben, mit welchem ich Daten in ein Excel Sheet eintragen kann.
Soweit funktioniert das auch problemlos. Da ich aber bei zwei Eingaben gerne ein DropDown Menu hätte und dies mit VBScript nicht ordentlich zu realisieren ist, habe ich mich für eine HTML-Applikation entschieden. Das Grundgerüst steht auch schon. Nur habe ich nun das Problem den restlichen VBScript Code in die hta-File so einzufügen, dass es auch funktioniert.
Hier mal mein VBScript:
Visual Basic-Quellcode
- Rem =================================================================================================================
- Rem == Start der 1. Abfrage in einer Messagebox. ==
- Rem =================================================================================================================
- dim m
- m = MsgBox("Mit dieser Anwendung wird ein neuer Benutzer in die Datenbank eingetragen!",vbOk,"Meldung")
- if m = 2 then
- WScript.Quit
- End If
- Rem =================================================================================================================
- Rem == Start der 2. Abfrage in einer Messagebox. ==
- Rem =================================================================================================================
- dim e
- e = msgbox("Einen Benutzer in die Datenbank eintragen?",+vbyesno,"Meldung")
- if e = vbno then
- WScript.Quit
- End If
- Rem =================================================================================================================
- Rem == Start der Do... Loop Anweisung! ==
- Rem =================================================================================================================
- DO
- Rem =================================================================================================================
- Rem == Initialisiere Excel Objekt. ==
- Rem =================================================================================================================
- Set oExcel = CreateObject("Excel.application")
- Rem =================================================================================================================
- Rem == Aktive Datei der ersten Objektvariablen zuordnen. ==
- Rem =================================================================================================================
- Set oWorkbook1 = oExcel.Workbooks.Open("test.xlsx")
- Rem =================================================================================================================
- Rem == Der Speicherort des Excel Sheets wird der Variablen "pfadzurexceldatei" zugeordnet. ==
- Rem =================================================================================================================
- pfadzurexceldatei="test.xlsx"
- Rem =================================================================================================================
- Rem == Variablen werden über InputBox abgefragt und für den späteren Eintrag zugewiesen. ==
- Rem =================================================================================================================
- Login = InputBox ("Accountname")
- VorlageA = InputBox ("Vorlage A")
- VorlageB = InputBox ("Vorlage B")
- Nachname = InputBox ("Nachname")
- Vorname = InputBox ("Vorname")
- Mainf = InputBox ("Hauptfunktion")
- Subf = InputBox ("Zusatzfunktion")
- Tele = InputBox ("Festnetznummer")
- Fax = InputBox ("Faxnummer")
- Handy = InputBox ("Handynummer")
- Mail = InputBox ("Mailadresse")
- Rem =================================================================================================================
- Rem == n Zeilen in einer Spalte untersuchen. (nach 1x Durchlauf --> Abbruch der Schleife mit "Exit For") ==
- Rem =================================================================================================================
- For nCounter = 1 To 500
- If oWorkbook1.Sheets(1).Cells(nCounter, 1).Value = "" Then
- oWorkbook1.Sheets(1).Cells(nCounter, 1).Value = (Login)
- oWorkbook1.Sheets(1).Cells(nCounter, 2).Value = (VorlageA)
- oWorkbook1.Sheets(1).Cells(nCounter, 3).Value = (VorlageB)
- oWorkbook1.Sheets(1).Cells(nCounter, 4).Value = (Nachname)
- oWorkbook1.Sheets(1).Cells(nCounter, 6).Value = (Vorname)
- oWorkbook1.Sheets(1).Cells(nCounter, 7).Value = (Mainf)
- oWorkbook1.Sheets(1).Cells(nCounter, 8).Value = (Subf)
- oWorkbook1.Sheets(1).Cells(nCounter, 9).Value = (Tele)
- oWorkbook1.Sheets(1).Cells(nCounter, 10).Value = (Fax)
- oWorkbook1.Sheets(1).Cells(nCounter, 11).Value = (Handy)
- oWorkbook1.Sheets(1).Cells(nCounter, 12).Value = (Mail)
- Exit For
- End if
- Next
- Rem =================================================================================================================
- Rem == Datei wieder schliesen. ==
- Rem =================================================================================================================
- oWorkbook1.SaveAs(pfadzurexceldatei)
- oWorkbook1.Close
- Rem =================================================================================================================
- Rem == Wiederholung der Do... Loop Anweisung durch Setzen der Variable mit der Messagebox. ==
- Rem =================================================================================================================
- dim a
- a = msgbox("Einen weiteren Benutzer in die Datenbank eintragen?",+vbyesno,"Meldung")
- Loop while a = vbyes
- Rem =================================================================================================================
- Rem == Verarbeitungsende und Ausgabe einer Meldung durch die Messagebox. ==
- Rem =================================================================================================================
- variable = MsgBox("Der/Die Anwender wurde(n) erfolgreich in die Datenbank eingetragen !",vbOKOnly,"Meldung")
- Rem =================================================================================================================
- Rem == Objektverweis wieder entfernen. ==
- Rem =================================================================================================================
- Set oWorkbook1 = Nothing
- oExcel.Quit
Hier hier ist meine bisherige hta-File:
HTML-Quellcode
- <html>
- <head>
- <title>Benutzerverwaltung</title>
- <HTA:APPLICATION
- ID="objTest"
- APPLICATIONNAME="Benutzerverwaltung"
- SCROLL="no"
- SINGLEINSTANCE="yes"
- windowState="normal"
- >
- </head>
- <SCRIPT LANGUAGE="VBScript">
- DIM Login
- DIM VorlageA
- DIM VorlageB
- DIM Nachname
- DIM Vorname
- DIM Mainf
- DIM Subf
- DIM Tele
- DIM Fax
- DIM Handy
- DIM Mail
- Sub Excel
- Set oExcel = CreateObject("Excel.application")
- Set oWorkbook1 = oExcel.Workbooks.Open("test.xlsx")
- pfadzurexceldatei="test.xlsx"
- End Sub
- Sub GenerateEntry
- For nCounter = 1 To 500
- If oWorkbook1.Sheets(1).Cells(nCounter, 1).Value = "" Then
- oWorkbook1.Sheets(1).Cells(nCounter, 1).Value = (Login)
- oWorkbook1.Sheets(1).Cells(nCounter, 2).Value = (VorlageA)
- oWorkbook1.Sheets(1).Cells(nCounter, 3).Value = (VorlageB)
- oWorkbook1.Sheets(1).Cells(nCounter, 4).Value = (Nachname)
- oWorkbook1.Sheets(1).Cells(nCounter, 6).Value = (Vorname)
- oWorkbook1.Sheets(1).Cells(nCounter, 7).Value = (Mainf)
- oWorkbook1.Sheets(1).Cells(nCounter, 8).Value = (Subf)
- oWorkbook1.Sheets(1).Cells(nCounter, 9).Value = (Tele)
- oWorkbook1.Sheets(1).Cells(nCounter, 10).Value = (Fax)
- oWorkbook1.Sheets(1).Cells(nCounter, 11).Value = (Handy)
- oWorkbook1.Sheets(1).Cells(nCounter, 12).Value = (Mail)
- Exit For
- End if
- Next
- End Sub
- Sub Abschluss
- oWorkbook1.SaveAs(pfadzurexceldatei)
- oWorkbook1.Close
- Set oWorkbook1 = Nothing
- oExcel.Quit
- End Sub
- Sub Window_Onload
- LoadDropDownA
- LoadDropDownB
- End Sub
- Sub LoadDropDownA
- ClearListBoxA
- Set objFS = CreateObject("Scripting.FileSystemObject")
- Set objFile = objFS.OpenTextFile("VorlagenA.txt")
- strVorlagenA = objFile.ReadAll
- objFile.Close
- arrVorlagenA = Split(strVorlagenA,vbNewLine)
- For Each strNumber in arrVorlagenA
- Set objOption = Document.createElement("OPTION")
- objOption.Text = strNumber
- objOption.Value = strNumber
- VorlagenA.Add(objOption)
- Next
- End Sub
- Sub LoadDropDownB
- ClearListBoxB
- Set objFS = CreateObject("Scripting.FileSystemObject")
- Set objFile = objFS.OpenTextFile("VorlagenB.txt")
- strVorlagenB = objFile.ReadAll
- objFile.Close
- arrVorlagenB = Split(strVorlagenB,vbNewLine)
- For Each strNumber in arrVorlagenB
- Set objOption = Document.createElement("OPTION")
- objOption.Text = strNumber
- objOption.Value = strNumber
- VorlagenB.Add(objOption)
- Next
- End Sub
- Sub ClearListboxA
- For Each objOption in VorlagenA.Options
- objOption.RemoveNode
- Next
- End Sub
- Sub ClearListboxB
- For Each objOption in VorlagenB.Options
- objOption.RemoveNode
- Next
- End Sub
- Sub Buttona_onclick
- a = VorlagenA.Value
- MsgBox a
- End Sub
- Sub Buttonb_onclick
- a = VorlagenB.Value
- MsgBox a
- End Sub
- Sub Buttonc_onclick
- c = outlook.Value
- MsgBox c
- End Sub
- </SCRIPT>
- <body>
- <fieldset>
- <p><b><u><font color="#FF0000" family="arial" size="5"><center>Formular zum Hinzufügen von Anwendern zur Datenbank!</center><br></font></u></b></p>
- <table>
- <tr>
- <td>Bitte wählen Sie die 1.Vorlage aus:
- <select name="VorlagenA"></select><br><br></td>
- <td align="right">Bitte wählen Sie die 2.Vorlage aus:
- <select name="VorlagenB"></select><br><br></td>
- </tr>
- <tr>
- <td><label for="name">Bitte die Benutzerkennung des Anwenders angeben!</label>
- <input name="Daten" type="text" size="70"></input></td>
- <td align="right"><label for="name">Bitte den Nachnamen des Anwenders angeben!</label>
- <input name="Daten" type="text" size="70"></input></td>
- </tr>
- <tr>
- <td><label for="name">Bitte den Vornamen des Anwenders angeben!</label>
- <input type="text" size="70"></input></td>
- <td align="right"><label for="name">In welcher Funktion ist der Anwender tätig?</label>
- <input type="text" size="70"></input></td>
- </tr>
- <tr>
- <td><label for="name">Sofern der Anwender eine Zusatzfunktion hat, bitte angeben!</label>
- <input type="text" size="70"></input></td>
- <td align="right"><label for="name">Unter welcher Festnetznummer ist der Anwender erreichbar?</label>
- <input type="text" size="70"></input></td>
- </tr>
- <tr>
- <td><label for="name">Unter welche Faxnummer ist der Anwender erreichbar?</label>
- <input type="text" size="70"></input></td>
- <td align="right"><label for="name">Unter welcher Nummer ist der Anwender unterwegs erreichbar?</label>
- <input type="text" size="70"></input><br><br></td>
- </tr>
- </table>
- <center><tr>
- <label for="name">Unter welcher Mailadresse ist der Anwender erreichbar?</label><br>
- <input type="text" size="70"></input>
- </tr></center>
- <center><tr>
- <form> <input type="Button" name="Buttona" value="2. Vorlage">
- <input type="Button" name="Buttonb" value="1. Vorlage">
- <input type="Button" name="Buttonc" value="Alle Daten übermitteln"></form>
- </tr></center>
- </fieldset>
- </body>
- </html>
Also das VBScript läuft tadellos. Und die hta-File bisher auch. Nun würde ich gerne die Funktionen aus dem Script in die hta-File übertragen. Für euch Spezialisten bestimmt ein Kinderspiel. Oder?
Vorab schon mal Danke für eure Hilfe.
Freundliche Grüße
p41n