Zum Inhalt springen

Smilla

Mitglieder
  • Gesamte Inhalte

    177
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Smilla

  1. Wenn ich "i" dann mit wscript.echo ausgeben will dann habe ich eine Endlosschleife erzeugt! P.S. das ist jetzt auf Jasso´s erste Antwort bezogen
  2. Hallo, ich bins schon wieder Aktuelles Problem: Bei meinem Script sollen die Schleifendurchläufe gezählt werden und somit soll herausgefunden werden wie oft "str2" in "str1" enthalten ist ;-) Wie und wo muss ich eine Zählvariable einbauen? Option Explicit Dim str1 Dim str2 Dim x Dim ergebnis Dim anzahlEin str1 = "Deiner ist ein schöner Text, meiner nicht." str2 = "ein" x = 1 ergebnis = InStr (x, str1, str2) Do While ergebnis <> 0 x = ergebnis ergebnis = InStr (x, str1, str2) Loop
  3. Ich habe jetzt eine Funktion gebastelt die alle Vorkommnisse von "ein" findet. So siehts aus: Option Explicit Dim str1 Dim str2 Dim x Dim ergebnis str1 = "Deiner ist ein schöner Text, meiner nicht." str2 = "ein" x = 1 ergebnis = InStr (x, str1, str2) Do Until ergebnis = 0 x = ergebnis ergebnis = instr (x, str1, str2) Loop Aber nun, wie lasse ich die Funktion die Vorkommnisse zählen und dann auch noch ausgeben???
  4. Ich liege zwar jetzt im ersten irgendwie relativ weit unten im vergleich zu euch anderen aber im 2. und 3. bekomm ich schon deutlich mehr als im 1. im 2. dürfte es brutto bei 600-700 liegen (weis es nicht auswendig) und im dritten dann um die 900 Brutto!
  5. Wenn ich will das die Instr. Funktion alle Vorkommnisse von "ein" in meinem Suchstring (siehe oben) entdeckt und mir die Positionen zurück gibt, muss ich da auch eine extra Funktion bauen oder ght das direkt mit instr.?? :confused:
  6. Kannst du bei Gelegenheit meinen Code mal rauskopieren und bei dir testen?
  7. Mit der Klammer funktioniert es nicht. Wenn ich die Syntax auf der Seite anschaue wo du mir den Link gegeben hast, dann ist meine Syntax aber irgendwie die selbe... Aber bei mir wird das nicht ersetzt
  8. @ascom: Doch str3 gibt es, das ist doch der Teil der als Ersetzung verwendet werden soll! Oder liege ich jetzt falsch?
  9. Danke Amstelchen, ich werd mal schauen
  10. Ich hab mich jetzt schon mehrmals an der Replace Funktion in VBScript versucht, aber nie klappt es, wo liegt der Fehler?? :confused: Dim str1 Dim str2 str1 = "Deiner ist ein schöner Text, meiner nicht" str2 = "ein" str3 = "X" Replace str1, str2, str3 WScript.Echo str1
  11. Hallo, also die Instr()-Funktion kenne ich, klappt auch! Aber wie kann ich mit der Instr. Funktion herausfinden wie oft der Suchstring im ZuDurchsuchendenString enthalten ist? Beispiel: String: "Deiner ist ein schöner Satz, meiner nicht." wie kann ich herausfinden wie oft darin "ein" vorkommt, ist ja insg. 3 mal!
  12. Ich dacht immer ich bekomm viel, aber manche von euch liegen ja noch deutlich höher als ich Bekomme jetzt im ersten Jahr 562 € Brutto, Netto bleiben mir 440 €.
  13. Also bei uns gilt das für alle Azubis (egal wie alt) das wenn man 6 oder mehr Stunden Schule hatte das man dann nichtmehr arbeiten kommen muss!
  14. Danke schonmal Soll halt pro Begriff ca. 1/4 Seite haben... Hab schonmal folgendes geschrieben: For…Next Schleife In der For-Next Schleife läuft eine Variable von einem Start- zu einem Zielwert. Sobald die Schleife den Zielwert erreicht hat, springt das Programm aus der Schleife und führt die nachstehenden Anweisungen aus. Syntax der For-Next Schleife: For Zähler = Startwert To Zielwert [Step Schrittweite] Anweisungen Next Zähler ist eine Variable, Start- und Zielwert sind beides Zahlen. Mit Step wird die Schrittweite angegeben, Step ist Optional und muss nur verwendet werden wenn anders als +1 gezählt werden soll. Also z.B. in zweiter Schritten (+2). Es kann auch rückwärts gezählt werden, dann einfach die Schrittweite mit Minus davor (z.B. -1) angeben. Die For-Next Schleife eignet sich dann am besten, wenn man von Anfang an genau weiß wie oft die Schleife durchlaufen werden soll. Ist die Anzahl der Durchläufe noch nicht sicher, ist eine Do…Loop Schleife besser. Foreach Die Foreach Schleife ist mit der For…Next schleife vergleichbar. Der Unterschied ist das die Foreach Schleife keinen Schleifenzähler hat, deswegen kann man als Programmierer auch nicht festlegen wie oft die Schleife durchlaufen soll. Die Schleife wird z.B. bei einer Arrayvariablen (oder auch einer anderen „Sammlung“) für jedes Element einmal ausgeführt. Das ist hilfreich wenn man die Anzahl der Elemente eines Arrays nicht genau kennt. While-Schleife Eine While-Schleife wird solange ausgeführt bis die Schleifenbedingung True also Wahr wird. Die Schleifenbedingung kann entweder nach Do oder erst nach Loop stehen. Je nach dem an welcher Stelle die Bedingung steht, wird so vor jedem Schleifendurchlauf (bei Do) oder nach jeden Schleifendurchlauf (bei Loop) geprüft. Do…Loop Bei der Do…Loop Schleife handelt es sich eigentlich um 3 Schleifentypen. Am Anfang jeder Do…Loop Schleife steht das Do, am Ende das Loop, dazwischen stehen die Anweisungen, diese bilden den „Schleifenkörper“. Die Do…Loop Schleife kann Kopfgesteuert oder Fußgesteuert sein. Die Unterscheidung liegt in der Formulierung der Austrittsbedingung. Mit While oder Until wird eine Bedingung überprüft. Um eine Do…Loop Schleife vorzeigt abzubrechen, reicht die Anweisung Exit Do. Kopfgesteuerte Schleifen Bei einer kopfgesteuerten Schleife steht die Bedingung in der Kopfzeile d.h. die Bedingung wird vor jedem Durchlauf geprüft und solange ausgeführt wie sie erfüllt ist. Ist die Bedingung nie erfüllt, wird die Schleife erst gar nicht betreten. Die Kopfgesteuerte Schleife wird meist mit While (=während) eingeleitet. Fußgesteuerte Schleifen Die Fußgesteuerte Schleife ist das Gegenstück zur Kopfgesteuerten Schleife. Die Bedingung steht hier nicht am Anfang der Schleife sondern am Ende. Die Anweisungen werden erst abgearbeitet bevor dann die Bedingung geprüft wird. Die Fußgesteuerte Schleife wird aber in jedem Fall betreten. Sie wird meist mit Do-While (=ausführen-während) eingeleitet. If Eine If-Abfrage prüft einen bestimmten Sachverhalt ob er Wahr (True) ist und macht dann etwas, also z.B. If 4 + 1 = 5 then Msgbox ("Richtig!") End if In dem Beispiel wird abgeprüft ob (if) 4 + 1 = 5, wenn das so ist dann (then) soll eine MsgBox mit dem Text „Richtig!“ ausgegeben werden. Wenn man nun die 5 duch eine 6 ersetzten würde, wäre der Sachverhalt ja nicht mehr Wahr, dann wird die If-Abfrage einfach übergangen. If… Else Um das oben beschrieben Problem (das Übergehen der If-Abfrage) zu vermeiden, kann man nach der Anweisung noch ein Else einsetzen. Beispiel: If 4 + 1 = 6 then Msgbox ("Richtig!") Else Msgbox ("Falsch!") End If Wenn also nun die If-Bedingung nicht zutrifft, wird die Anweisung die nach dem Else (~ alles andere) steht ausgeführt. In diesem Fall würde dann die MsgBox „Falsch!“ ausgegeben, da die If-Bedingung nicht zutrifft. Sub Eine Prozedur beginnt immer mit dem Wort Sub und endet mit End Sub, die dazwischen liegenden Aktionen werden dann ausgeführt. Hinter dem Sub folgt dann der Prozedurname, dahinter können in Klammern Argumente (Konstanten, Variablen, Ausdrücke) angegeben werden die die Prozedur übernehmen soll. Will man keine Argumente angeben, muss man hinter den Prozedurnamen ein leeres Klammernpaar () setzen. Der Unterschied zu einer Funktion liegt darin das Prozeduren keinen Rückgabewert liefern, Funktionen schon. Aufgerufen werden Prozeduren so wie Funktionen einfach über ihren Namen und die evtl. vergebenen Parameter. Function Eine Funktion ist ähnlich aufgebaut wie eine Prozedur, nur das bei der Function die auszuführenden Aktionen zwischen Function und End Function stehen. Hinter dem Function steht dann der Funktionsname und dahinter können dann, wie bei einer Sub auch, Argumente angegeben werden, hat die Funktion keine Argumente, muss man hinter den Funktionsnamen ein leeres Klammernpaar () setzen. Eine Funktion liefert im Gegensatz zu einer Prozedur einen Rückgabewert. Das Aufrufen einer Funktion funktioniert genauso wie das Aufrufen einer Prozedur (Sub). True / False True (=Wahr) und False (=Falsch) werden meistens für If-Abfragen oder Schleifen verwendet. Zum Beispiel das eine Schleife solange ausgeführt wird, solange eine bestimmte Bedingung wahr / bzw. falsch ist. Oder bei einer If-Abfrage die festlegt „wenn diese Bedingung wahr ist, dann mach das“. Instr() Die Instr-Funktion gibt das erste Zeichen einer Zeichenfolge (String) in einer anderen Zeichenfolge wieder. (Mit der Instr-Methode kann man nach bestimmten Zeichen innerhalb einer Zeichenkette (String) suchen). Instr ([Start,] Zeichenfolge 1, Zeichenfolge 2, [Vergleich]) Start (Optional) gibt an ab welchem Zeichen gesucht werden soll, wird nichts angegeben, wird ab dem ersten Zeichen gesucht. Das Argument Vergleich ist ebenfalls Optional, wenn dieses aber angegeben wird, muss auch das Argument Start angegeben werden. Zeichenfolge 1 gibt den String an der durchsucht werden soll und die Zeichenfolge 2 gibt den String an, nach dem gesucht werden soll. Die Optionale Angabe Vergleich gibt an wie verglichen werden soll. Not Not wird verwendet um etwas zu verneinen. Verwender man Not in Kombination mit True oder False so ergeben die beiden Werte jeweils das Gegenteil, also Not True = False (~nicht Wahr = Falsch) und Not False = True.(~nicht Falsch = Wahr). Replace() Mit der Replace-Funktion kann man einen Teilstring innerhalb eines Strings nach Vorgabe ersetzen. Replace (Ausdruck, suchen, ersetzen durch, [starten, [Anzahl, [vergleichen]]]) Ausdruck (Strings) gibt die Zeichenfolge an in der etwas ersetzt werden soll, Suchen ist die Zeichenfolge nach der gesucht werden soll. Der Parameter Ersetzen durch (String) legt die Zeichenfolge fest die als Ersatz verwendet werden soll. Starten, Anzahl und Vergleichen sind Optional und vom Datentyp Integer. Starten legt fest an welcher Position die Suche beginnen soll, wird Start nicht angegeben, beginnt die Suche beim ersten Zeichen des Strings. Anzahl legt fest wie viele Ersetzungen durchgeführt werden sollen, wird Anzahl nicht angegeben, werden alle möglichen Zeichenfolgen ersetzt.
  15. Gute Frage, darüber habe ich keine Informationen in meiner Aufgabe, ich habs bis jetzt so teils teils gemacht, wie ich halt Informationen gefunden habe!
  16. Also ich muss folgende Begriffe ausarbeiten, erklären, kurzer Text dazu, usw. Wer kann mir weiterhelfen?? Ich suche natürlich parallel auch in Google! Ich notiere mal alle Begriffe und wer zu einem Begriff was weis kann es mir ja schreiben! For-Next Schleife Foreach While-Schleife Do...Loop Fussgesteuerte Schleifen Kopfgesteuerte Schleifen if if...else sub function NOT TRUE / FALSE instr() replace() nothing Der Begriff "Objekt" :mod: :)
  17. Smilla

    CSS in VBScript

    Gute Frage Ich hätte es jetzt extern abgelegt. Was ist denn sinnvoller?? Edit: Ich habe so eben beschlossen die CSS Befehle zu integrieren!
  18. Smilla

    CSS in VBScript

    So, eines Problem erfolgreich gelöst... ...und das nächste folgt sogleich... Mist... Und zwar, wenn ich mit VBscript eine Datei erstelle, kann ich in die ja auch reinschreiben (bsp. Textdatei, HTMLDatei). Bei ner HTML-Datei schreibe ich ja dann write.WriteLine ("<html>") Hier meinen Code dazwischen ("</html>") Wie mache ich das wenn ich CSS schreiben muss?? Kann ich da schreiben write.WriteLine ("<css>") ?? Wahrscheinlich nicht... oder? Wie sage ich dem Script dann das ich nun CSS Schreiben will??? :confused: Hoffe auf schnelle Hilfe! Viele Liebe Grüße Lisa :e@sy
  19. Danke euch!! Jetzt klappt es! (Was würde ich ohne dieses Forum nur machen???!?! ) @Boro: Du hattest Recht, ich habe die Sub nirgends aufgerufen, aber auch als ich das gemacht hab ging es nicht! Irgendwann kam die Fehlermeldung das die Erlaubnis verweitert wäre usw. @Amstelchen: Du hast recht, in meiner Aufgabe stand nur das die Datei im Browser geöffnet werden soll! Habe es jetzt so abgeändert! Danke nochmal euch allen!! :e@sy :e@sy :e@sy
  20. Danke Boro, habe das geändert! Aber es tut sich trotzdem nix! Wenn ich das Script ausführe, tut sich gar nichts, keine Fehlermeldung und nichts, wo liegt noch ein Fehler??:confused:
  21. Hä? Was meinst du? :confused:
  22. Das müsste doch eigentlich schon so gehen, oder? Nur warum gehts nicht? :confused: Option Explicit 'Globale Variablen Dim HTMLfilename HTMLfilename = "U:\LisaJ_Scripte\adressverwaltung\adressen.html" 'Öffnen der HTML-Seite und anzeigen im Internet Explorer Sub OpenHTMLfile Dim Shell Set Shell = CreateObject("WScript.Shell") Shell.Run ("iexplorer.exe " & HTMLfilename) End Sub
  23. Dim AdressenHTML AdressenHTML = "U:\LisaJ_Scripte\adressen.html" Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateTextFile(AdressenHTML) Wo liegt der Fehler? Warum erstellt es meine HTML Seite nicht? :confused:
  24. Function SucheInArray() Dim i Dim arrTempAdresse() Dim iArrayElem2 iArrayElem2 = 0 For i = 1 To UBound(arrAdresse, 2) 'von 1 bis zum höchsten Index-Wert If strSuche = arrAdresse(1,i) Then 'Wenn der Suchbegriff = dem Feld (1,i) im Datenarray ist,dann... iArrayElem2 = iArrayElem2 + 1 'iArrayElem2 um 1 erhöhen WScript.Echo "iArrayElements:" & iArrayElem2 & vbNewLine ReDim Preserve arrTempAdresse(6, iArrayElem2) 'Deklaration eines dynamischen Array arrTempAdresse(0, iArrayElem2) = arrAdresse(0,i) arrTempAdresse(1, iArrayElem2) = arrAdresse(1,i) ' arrAdresse(1,iArrayElements) = arTemp(1) ' arrAdresse(2,iArrayElements) = arTemp(2) ' arrAdresse(3,iArrayElements) = arTemp(3) ' arrAdresse(4,iArrayElements) = arTemp(4) ' arrAdresse(5,iArrayElements) = arTemp(5) End If Next Ist jetzt n Codeausschnitt, wie sage ich da das WENN eine Übereinstimmung gefunden wurde, die entsprechende Zeile in ein neues Temporäres Array gespeichert werden soll?
  25. Also so siehts jetzt aus (nur die Suche, mache dafür n extra Programm, ist sinnvoller finde ich) Option Explicit 'Globale Variablen Dim strSuche Dim sAdressFilePath Dim arrAdresse()'Array Dim iArrayElements iArrayElements = 1 ReDim preserve arrAdresse(6,1) sAdressFilePath = "U:\LisaJ_Scripte\adresse.txt" '================================================================= ' Main '================================================================= 'InputBox mit Frage nach Suchwort strSuche = InputBox ("Geben Sie bitte Ihren Suchbegriff ein!" , "Suchfunktion") 'Datei einlesen ReadEntireFile(sAdressFilePath) '================================================================= ' Functions und subs '================================================================= 'Erzeugt aus dem Inhalt der Datei ein tolles Array Sub AddToArray(sLine) Dim arTemp 'Variable für Temporäres Array iArrayElements = iArrayElements + 1 WScript.Echo "iArrayElements:" & iArrayElements & vbNewLine ReDim Preserve arrAdresse(6, iArrayElements) arTemp = Split(sline, ";") 'WScript.Echo UBound(arTemp) arrAdresse(0,iArrayElements) = arTemp(0) arrAdresse(1,iArrayElements) = arTemp(1) arrAdresse(2,iArrayElements) = arTemp(2) arrAdresse(3,iArrayElements) = arTemp(3) arrAdresse(4,iArrayElements) = arTemp(4) arrAdresse(5,iArrayElements) = arTemp(5) Dim i For i = 1 To UBound(arrAdresse,2) WScript.Echo arrAdresse(0,i) WScript.Echo arrAdresse(1,i) WScript.Echo arrAdresse(2,i) WScript.Echo arrAdresse(3,i) WScript.Echo arrAdresse(4,i) WScript.Echo arrAdresse(5,i) Next End Sub 'Laden der Daten Function ReadEntireFile(strAdressFilePath) Const ForReading = 1 Dim fso, theFile, retstring Set fso = CreateObject("Scripting.FileSystemObject") Set theFile = fso.OpenTextFile(strAdressFilePath, ForReading, False) Do While theFile.AtEndOfStream <> True AddToArray(theFile.ReadLine) Loop theFile.Close ReadEntireFile = retstring End Function Wenn ich als Suchbegriff jetzt beispielsweise "Hans" (also Vorname) eingebe, dann sollen alle Einträge mit dem Suchbegriff verglichen werden und es soll nach Übereinstimmungen gesucht werden, (mit ner For...Next Schleife). Wenn dann eine Übereinstimmung gefunden wurde soll die komplette Adresszeile in ein temporäres Array kopiert werden, wenn alle Einträge auf Übereinstimmung geprüft wurden, soll das Ergebnis ausgegeben werden. So, wie spreche ich in einer Schleife den Suchbegriff der eingegeben wurde an? Woher weis der Rechner das er dann nur bsp.weise in der Spalte Name suchen soll?? :confused:

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...