ich depp...habe ich nicht gesehen. Ich teste mal
Beiträge von Norman Bates
-
-
Das 2te ist doch genau das gleiche wie das 1ste oder

-
Genau das ist das problem er färbt es im ersten durchgang schon rot.
die zeile
[autoit]$excel.Cells($i, 10).Font.ColorIndex = $ColorIndex
[/autoit]
sagt ja nur das er in der zeile $i, wo er ja auch ne namen kopiert hat, jetzt nur den namen bzw. die zelle $i färben soll.Es sind ja mehrere zeilen.
-
Ne das stimmt schon schon weil $i wird im script weiter oben aufgerufen um immer in die nächste excel zelle zu springen um da den shop namen zu kopieren.
[autoit]For $i = 2 To 166
[/autoit]
$excel_tabelle = _ExcelReadCell($excel, $i, 10) -
Super kommentiert danke.
Also zu den Versender[2] ist in diesem fall Hermes Paket.
[autoit]Case $versender[2] = $standard[$s]
[/autoit]
$ColorIndex = 5In Dieser fall trifft die abfrage zu, trotzdem macht er die zelle rot.
versender[2] ist im array standard[0]
und
"ware muss abgeholt werden" ist im array standard[1].Nur "ware muss abgeholt werden" frage ich nirgendwo ab.
-
Klappt soweite ganz gut.
Eine Bitte habe ich noch und eine frage....
Erst die frage bei versender[2] macht er anstatt blau -> rot obwohl es im array auf 0 ist nur in diesem Fall ist noch "Ware muss abgeholt werden" auf 1 im array.
Und die Bitte.
Könntest Du mir das noch kommentieren dami der lerneffekt bei mir eintritt

Danke und Gruß
Norman -
Ich probiere es direkt mal aus.
-
aber das sinnvollste wäre wohl wenn du die am Schluss noch mit einem If abfängst.Wie meinst Du das?
-
Ausserdem, so wie ich das sehe, gehst du immer davon aus dass $standard die Indexe 0-3 hat. Ich bin mir jetzt nicht ganz sicher aber so wie du das beschreibst hat der doch nicht immer 4 Werte.
Richtig mal steht auch nur ein Wert drin oder zwei Werte.
Gruß
Norman -
ich seh im moment echt nicht Wald vor lauter Bäumen.
Hast Du einen Lösungsansatz für mich ?
-
Hallo zusammen,
ich habe ein kleines Problem mit meinem Script.
Es gibt ebay shops die mehr als eine Versandart anbieten.Z.b. Sparversand, Einschreiben und DHL Paket
Im HTML Code stehen alle unter
der Inhalt der Klammern ändert sich und Sparversand und Standardversand.$standard = _StringBetween($source, 'class="sh-TblCnt"><div><div>',"</div>")
$source hat der wert von _inetgetsourceMein script funktioniert, wenn Sparversand vorhanden und Standardversand DHL weil es mir ja nur um DHL geht. (Variante1)
Wenn aber ein Shop kommt der nur Sparversand hat bricht das script ab.
Setze ich ein Case wo Standard = versender5 (versender5 = sparversand) ist die variante1 hinfällig.Kann mir einer sagen was ich falsch mache?
Danke und Gruß
[autoit]
NormanFunc _versandchecken($excel_fenster, $ie_fenster)
[/autoit][autoit][/autoit][autoit]
_IELinkClickByText($inet,"Alle Details zum Versandanzeigen")Sleep(1200)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
WinSetState($ie_fenster,"",@SW_MINIMIZE)For $s = 0 to 3
[/autoit][autoit][/autoit][autoit]
Select
#cs
Case $standard[$s] = $versender[0]
MsgBox(0,"",$standard[$s])
_IEQuit($inet)Case Not $standard[$s] = $versender[0]
[/autoit][autoit][/autoit][autoit]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 3
Sleep(500)
_IEQuit($inet)
#ce
Case $versandtext[0] = " - Paketversand"
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(500)
$excel.Cells($i, 10).Interior.ColorIndex = 16
_IEQuit($inet)
;-----------------------------------------------------------------
;DHL Versand
Case $standard[$s] = $versender[0]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).font.ColorIndex = 45
Sleep(500)Case Not $standard[$s] = $versender[0]
[/autoit][autoit][/autoit][autoit]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 3
Sleep(500)
_IEQuit($inet)
;--> DHL Versand
;-----------------------------
; DPD Versand
Case $versender[1] = $standard[$s]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 3
Sleep(500)Case Not $standard[$s] = $versender[0]
[/autoit][autoit][/autoit][autoit]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 3
Sleep(500)
_IEQuit($inet)
;--> DPD Versand
;-----------------------------
;Hermes Versand
Case $versender[2] = $standard[$s]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 5
Sleep(500)Case Not $standard[$s] = $versender[2]
[/autoit]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 3
Sleep(500)
_IEQuit($inet)
;--> Hermes Versand
;-----------------------------
;Deutsche Post Brief
Case $versender[3] = $standard[$s]
WinSetState($excel_fenster,"", @SW_MAXIMIZE)
Sleep(1000)
$excel.Cells($i, 10).Font.ColorIndex = 3
Sleep(500)
EndSelect
Next
_IEQuit($inet)
EndFunc -
und ich hätte noch eine frage wie kann ich in der Liste wo man das alter auswählt anklicken lassen?
Spoiler anzeigen
[autoit]$oIE = _IECreate("http://www.youtube.com/create_channel")
[/autoit] [autoit][/autoit] [autoit]
Sleep(3000)
$oForm = _IEFormGetObjByName($oIE,"signupForm")
$dayInput = _IEFormElementGetObjByName($oForm, "birthday_day")
$monthInput = _IEFormElementGetObjByName($oForm, "birthday_mon")
$yearInput = _IEFormElementGetObjByName($oForm, "birthday_yr")
Sleep(2000)_IEFormElementOptionSelect($dayInput,"14",1, "bytext")
[/autoit]
_IEFormElementOptionSelect($monthInput,"Oktober",1, "bytext")
_IEFormElementOptionSelect($yearInput,"1990",1, "bytext")darf ich fragen wie du auf
[autoit]$oForm = _IEFormGetObjByName($oIE,"signupForm")
[/autoit]gekommen bist
Guck Dir mal folgendes Video an.
http://www.youtube.com/watch?v=mSG3IHqE6wwDamit ist es eigentlich recht einfach.
Gruß
Norman -
Wenn ich das richtig verstanden habe möchtest Du folgendes?
[autoit]#include<IE.au3>
[/autoit][autoit][/autoit][autoit]$oIE = _IECreate("http://www.youtube.com/create_channel") ; öffnet die Seite youtube/create channel ... eingeloggt vorausgesetzt
[/autoit]
Sleep(4000)
$oForm = _IEFormGetObjByName($oIE,"signupForm") ; Name der Form
$usernameInput = _IEFormElementGetObjByName($oForm, "username") ; Name des Input Feld´s
_IEFormElementSetValue($usernameInput, "test"); In das Input Feld wird "test" eingebenGruß
Norman -
Danke, Danke und nochmal Danke für Deine Hilfe.
Gruß
Norman -
Kannst Du mir noch eins Erklären....
Was bedeutet das -1 nach If $search <>.Ich möchte auch lernen und nicht immer fragen.

-
EDIT
Ich habe den Fehler gemacht.... anstatt _ArraySearch hatte ich noch ArrayFindAll drin stehen.
-
und da soll er auf den ersten Link klicken der eine Auktion öffnet.Hab ich doch geschrieben

Dabei ist total egal welcher Link, hauptsache ne Auktion. -
Das sieht super aus Danke.
Eine frage habe ich noch. Er öffnet alle Link´s mit der Vorgabe.
Er soll aber nur den einen Link mit der vorgabe öffnen den er findet.Gruß Norman
-
Hallo zusammen,
ich hab mal wieder ein Frage.
Im folgenden Script öffne ich eine Inet Seite und da soll er auf den ersten Link klicken der eine Auktion öffnet.
Wenn ich die If Abfrage auskommentiere und bei _IENavigate($inet, $alink[195]) eintrage funkioniert es nur ich will ja das er den Link selber findet.Kann mir einer nen Tip geben wie ich das lösen kann?
Danke und Gruß
NormanSpoiler anzeigen
[autoit]#include<IE.au3>
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
#include<Array.au3>
#include<String.au3>
#include<inet.au3>Global $inet, $x, $links, $ie_fenster
[/autoit] [autoit][/autoit] [autoit]; Ebay Store wird geöffnet
[/autoit] [autoit][/autoit] [autoit]
$inet = _IECreate("http://stores.ebay.de/HANDY-TEILE-SHOP")
_IELoadWait($inet)
$ie_fenster = HWnd($inet.HWnd)
WinSetState($ie_fenster, "", @SW_MAXIMIZE)
$links = _IELinkGetCollection($inet)Local $x = 0, $alink[@extended]
[/autoit]
For $link in $links
$alink[$x] = $link.href
$x += 1
Next
If StringInStr($link.href, "http://cgi.ebay.de") Then
;Link wird geöffnet
_IENavigate($inet, $alink[195]); wenn ich hier z.b. 195 eintrage funktioniert es, aber nur wenn ich die IF Anweisung aus Kommentiere.
EndIf -
Immer wird mir in der SB gesagt mach einen Thread auf und dann macht man das und dann sowas

zufrieden? Das hättest du auch echt selber herausfinden können.
Dafür ist das Forum doch da oder
Hilfe erfragen um diese hoffentlich zu bekommen?!
Vielleicht hätte ich es in ein paar Tagen selbst rausgefunden.
Bin halt noch nicht sooo Fit in Autoit.
Nichts desto trotz Danke für Deine Hilfe.Gruß
Norman