1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. sc4ry

Beiträge von sc4ry

  • Mehrere Exceldateien zu einer zusammenfassen

    • sc4ry
    • 6. Mai 2007 um 10:28

    danke bugfix. hatte es mir gestern schonmal kurz angeguckt und war mir dann zuviel (zumindest um die uhrzeit *g*)

    aber ich werds probieren, wenn ich jetzt weiss, dass es so geht =)

  • gui - 2 combos verknüpfen

    • sc4ry
    • 6. Mai 2007 um 09:46

    hi,

    ich bin jetzt auch wieder auf ein problemchen gestoßen, und zwar habe ich 2 combo-boxen (drop-down) erstellt, wobei 2te box auf den inhalt der 1sten box reagieren soll.

    leider bekomme ich es nur so hin, dass er nur beim start des programmes darauf rücksicht nimmt, nicht aber wenn danach was geändert wird.

    Spoiler anzeigen
    [autoit]

    ;2nd Tab
    GUICtrlCreateTab(-1, -1, 270, 165)
    GUICtrlCreateTabItem("CD-Settings")
    ;CDType
    GUICtrlCreateLabel("Choose CD Type", 10, 30)
    $Combo = GUICtrlCreateCombo("Data-CD", 10, 50) ;<< hier soll das auswahlkriterium gezogen werden
    GUICtrlSetData(-1, "SVCD|VCD|Image")


    ;3rd Tab
    GUICtrlCreateTab(-1, -1, 270, 165)
    GUICtrlCreateTabItem("Filesettings")
    ;BurnDir
    GUICtrlCreateLabel("Choose Burning-Dir", 10, 30)
    $CreateInput = GUICtrlCreateInput("C:", 10, 50, 180)
    GUICtrlSetState(-1, $GUI_ACCEPTFILES)
    $browse = GUICtrlCreateButton("&Browse", 195, 48, 70)
    $input = GUICtrlRead(16)
    ;FileType
    GUICtrlCreateLabel("Choose Extension", 10, 90)
    $CreateCombo = GUICtrlCreateCombo("", 10, 110)
    $SetData = GUICtrlRead($Combo) ;<< hier soll die auswahl beschränkt werden
    if $SetData = "Data-CD" then
    GUICtrlSetData($CreateCombo, "*.avi|*.divx|*.divx|*.*", "*.avi")
    elseif $SetData = "SVCD" or "VCD" then
    GUICtrlSetData($CreateCombo, "*.mpg", "*.mpg")
    ElseIf $SetData = "Image" then
    GUICtrlSetData($CreateCombo, "*.nrg|*.iso|*.bin|*.cue", "*.iso")
    EndIf

    [/autoit]

    ps: ich würde auch gerne einen fortschrittsbalken einbauen, kann man das so schreiben, dass er den fortlaufenden brennvorgang anzeigt?

  • Mehrere Exceldateien zu einer zusammenfassen

    • sc4ry
    • 6. Mai 2007 um 09:41

    hey, ich bins nochmal.

    nachdem ich jetzt _ExcelSheetMove($oExcel, $vMoveSheet, $vRelativeSheet= 1, $fBefore = True) verstanden habe, weiss ich, dass es mir nicht bei meinem prob weiterhelfen wird, da es nur für 1 datei gilt.
    man müsste also irgendwie die funktion umschreiben ... was aber (für mich) nicht so leicht sein würde.

    leider habe ich sonst keine passendes UDF gefunden. (ausser vllt. a la c&p, wobei ich das irgendwie nicht so gut finde).

    das wäre die funktion, meint ihr das ist möglich für 2 exceldateien anzupassen, so dass man 1 sheet aus der einen datei in die andere verschieben/kopieren kann?

    Spoiler anzeigen
    [autoit]

    ;
    ; Description: Move the specified sheet before another specified sheet.
    ; Syntax: _ExcelSheetMove($oExcel, $vMoveSheet, $vBeforeSheet)
    ; Parameter(s): $oExcel - An Excel object opened by a preceding call to _ExcelBookOpen() or _ExcelBookNew()
    ; $vMoveSheet - The name or number of the sheet to move (a string or integer)
    ; $vRelativeSheet - The moved sheet will be placed before or after this sheet (a string or integer, defaults to first sheet)
    ; $fBefore - The moved sheet will be placed before the relative sheet if true, after it if false (True or False) (default=True)
    ; Requirement(s): None
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0 and sets @error on errors:
    ; @error=1 - Specified object does not exist
    ; @error=2 - Specified sheet number to move does not exist
    ; @error=3 - Specified sheet name to move does not exist
    ; @error=4 - Specified relative sheet number does not exist
    ; @error=5 - Specified relative sheet name does not exist
    ; Author(s): SEO <locodarwin at yahoo dot com>
    ; Note(s): None
    ;
    ;===============================================================================
    Func _ExcelSheetMove($oExcel, $vMoveSheet, $vRelativeSheet = 1, $fBefore = True)
    Local $aSheetList, $iFoundMove = 0, $iFoundBefore = 0
    If NOT IsObj($oExcel) Then Return SetError(1, 0, 0)
    If IsNumber($vMoveSheet) Then
    If $oExcel.ActiveWorkbook.Sheets.Count < $vMoveSheet Then Return SetError(2, 0, 0)
    Else
    $aSheetList = _ExcelSheetList($oExcel)
    For $xx = 1 To $aSheetList[0]
    If $aSheetList[$xx] = $vMoveSheet Then $iFoundMove = $xx
    Next
    If NOT $iFoundMove Then Return SetError(3, 0, 0)
    EndIf
    If IsNumber($vRelativeSheet) Then
    If $oExcel.ActiveWorkbook.Sheets.Count < $vRelativeSheet Then Return SetError(4, 0, 0)
    Else
    $aSheetList = _ExcelSheetList($oExcel)
    For $xx = 1 To $aSheetList[0]
    If $aSheetList[$xx] = $vRelativeSheet Then $iFoundBefore = $xx
    Next
    If NOT $iFoundBefore Then Return SetError(5, 0, 0)
    EndIf
    If $fBefore Then
    $oExcel.Sheets($vMoveSheet).Move($oExcel.Sheets($vRelativeSheet))
    Else
    $oExcel.Sheets($vMoveSheet).Move(Default, $oExcel.Sheets($vRelativeSheet))
    EndIf
    Return 1
    EndFunc ;==>_ExcelSheetMove

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • tv kaputt

    • sc4ry
    • 4. Mai 2007 um 22:37

    hehe,

    hab nen ersatz tv abgestaubt, aber leider kleiner und ohne ich kann den nicht über den pc ansteuern, von daher.
    aber ich hab mir jetzt gedacht, dass ich den doch weghaue, vllt bei ebay rein *lol*

    der vater von meiner freundin hat sich nen plasma geholt und hat jetzt halt 1 über, den werd ich dann bekommen und mir die reperatur sparen.
    evtl will den ja wer ausm bekanntenkreis ... mal schauen.

    bin leidenschaftlicher film-gucker, von daher brauch ich schon nen tv, aber meist läuft er nur nebenbei, wenn ich hier im forum lesen ;)

  • Mehrere Exceldateien zu einer zusammenfassen

    • sc4ry
    • 4. Mai 2007 um 15:14

    nochmal danke für deine hilfe alina.
    werd das auf jeden fall am we auch testen =)

    hab mich aber auch mal nach excel UDF umgeschaut.
    gefunden habe ich dabei das

    _ExcelSheetMove($oExcel, $vMoveSheet, $vRelativeSheet= 1, $fBefore = True)

    hat da jmd erfahrung mit?
    also excel öffnen und speichern/schließen kann ich jetzt *g*
    aber sheetmove will irgendwie nicht =(

    PS2: habs jetzt so, aber es klappt nicht =(

    Spoiler anzeigen
    [autoit]

    #include <ExcelCOM_UDF.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $oExcel = _ExcelBookNew(1)
    $1 = _ExcelBookOpen("C:\Produkte.xls",0)
    $1sheet = _ExcelSheetNameGet($1)
    _ExcelSheetMove($oExcel, $1sheet)
    _ExcelBookClose($1)

    [/autoit] [autoit][/autoit] [autoit]

    $2 = _ExcelBookOpen("C:\Kam Kunden.xls",0)
    $2sheet = _ExcelSheetNameGet($2)
    _ExcelSheetMove($oExcel, $2sheet)
    _ExcelBookClose($2)

    [/autoit] [autoit][/autoit] [autoit]

    $3 = _ExcelBookOpen("C:\Gebiete.xls",0)
    $3sheet = _ExcelSheetNameGet($3)
    _ExcelSheetMove($oExcel, $3sheet)
    _ExcelBookClose($3)

    [/autoit] [autoit][/autoit] [autoit]

    $4 = _ExcelBookOpen("C:\Top Kunden.xls",0)
    $4sheet = _ExcelSheetNameGet($4)
    _ExcelSheetMove($oExcel, $4sheet)
    _ExcelBookClose($4)

    [/autoit] [autoit][/autoit] [autoit]

    $5 = _ExcelBookOpen("C:\Marken.xls",0)
    $5sheet = _ExcelSheetNameGet($5)
    _ExcelSheetMove($oExcel, $5sheet)
    _ExcelBookClose($5)

    [/autoit] [autoit][/autoit] [autoit]

    _ExcelBookSaveAs($oExcel, "C:\blaaaa.xls")
    _ExcelBookClose($oExcel)

    [/autoit] [autoit][/autoit] [autoit][/autoit]
  • shutdown mit msgbox

    • sc4ry
    • 4. Mai 2007 um 09:39

    danke peethebee,

    das hat mir schon weitergeholfen.
    auf die schnelle viel mir nix besseres ein, aber in endeffekt isses ja auch egal, was es macht, bis er geschlossen wird *g*
    sollte halt nur den prozessor nicht belasten

    [autoit][/autoit][autoit][/autoit][autoit]

    #NoTrayIcon
    #include <GUIConstants.au3>
    Opt("OnExitFunc", "exitfunc")
    Do
    WinWaitActive("Windows herunterfahren")
    until ProcessExists("shutdown.exe")

    [/autoit][autoit][/autoit][autoit]

    Func exitfunc()
    MsgBox(0, "Nicht vergessen", "Fenster zu..." & @CRLF & "Wasserkocher aus..." & @CRLF & "Klimaanlage aus..." & @CRLF & "Drucker aus..." & @CRLF & "... und das ich dich liebe")
    EndFunc

    [/autoit][autoit][/autoit][autoit][/autoit]
  • shutdown mit msgbox

    • sc4ry
    • 3. Mai 2007 um 20:38

    hey,

    da ich jetzt soviel mit autoit mache, hat mir meine freundin auch direkt mal was aufs auge gedrückt.
    und zwar hätte sie gerne, bevor der pc runterfährt, eine msgbox mit erinnerungen.
    am besten fährt der pc natürlich dann erst runter, wenn die box bestätigt wird.

    hört sich einfach an, aber ich denke, das ende ist es nicht, oder?

    theoretisch müsste die datei im autostart liegen und darauf warten bis der pc runtergefahren wird, und auch nur dann (also nicht beim abmelden).
    damit würde mein erster gedanke (processexist("shutdown.exe") flachfallen.

    hatte jetzt die idee, vllt die shutdown.exe zu ersetzten, aber da kommen mir auch bissel zweifel *g*

    meint ihr, dass ist irgendwie möglich?

  • Mehrere Exceldateien zu einer zusammenfassen

    • sc4ry
    • 3. Mai 2007 um 19:19

    danke, werde ich machen und morgen mal probieren.

    @th.meger, ich brauche es täglich, bzw es soll in den ganzen automatisierten prozess, und dann natürlich auch automatisch =)

    ich hätte ein Add-in für excel, was dies auch macht, aber dieses geht zZ nicht, wg activex probs, und wenn das script jmd an nem anderen rechner nutzt, würde es mit diesem makro auch zu problemen kommen, daher wäre mir ne UDF schon ganz lieb.

    was es nicht alles gibt, bin ja mal gespannt =)

  • NeroCMD AutBurner V.2 Final

    • sc4ry
    • 3. Mai 2007 um 19:16

    hey alina, sorry für den verbrannten rohling.
    hätte ich vllt deutlicher machen sollen. das tool brennt auch immer nur 1 file auf eine cd. ich selber nutze es zb dafür, dass ich nacheinander avis mit 700mb auf eine cd brenne.

    zumindest tut es das noch, gucken was ich in die nächste version so mit reinpacken kann.

    hätte du noch einen neuen rohling reingeschmissen, hätte es die nächste datei gebrannt, also insgesamt 67 dateien auf 67 verschiedene rohlinge =)

  • NeroCMD AutBurner V.2 Final

    • sc4ry
    • 3. Mai 2007 um 17:01

    also wenn du das hast, sag bescheid, mit bauanleitung, dann kommt es noch rein =)

  • richtiger contdown

    • sc4ry
    • 3. Mai 2007 um 15:53

    ihr habt es nicht anders gewollt =)

    ich müsste Tagesumsätze Produkte laden und später damit weiterarbeiten, danach die nächsten TU öffnen

  • Mehrere Exceldateien zu einer zusammenfassen

    • sc4ry
    • 3. Mai 2007 um 15:40

    die dateien sind schon super formatiert, jede datei enthält auch nur 1 arbeitsblatt. am ende brauche ich 1 neue datei, die 5 arbeitsblätter hat ... also aus jeder datei das eine arbeitsblatt.

    die arbeitsblätter an sich sind aber in jeder datei verschieden.

    das wärs eigentlich schon.

  • Mehrere Exceldateien zu einer zusammenfassen

    • sc4ry
    • 3. Mai 2007 um 15:19

    hey,

    ich setzt das thema mal ins offtopic, da ich nicht weiss, in wie weit das mit autoit möglich ist, aber mir würden auch andere vorschläge weiterhelfen.

    also ich habe 5 dateien, die ich zu einer zusammenfügen möchte, am besten so, dass man es anschließend automatisieren könnte?

    hat jmd von sowas schonmal gehört?

    bei mpg files, die kann man zb über die cmd mergen, das wäre easy =)

  • richtiger contdown

    • sc4ry
    • 3. Mai 2007 um 14:27

    ja, vllt wäre es irgendwie möglich, aber dafür bin ich noch zu grün hinter den ohren.

    leider ist die seite nur im intranet verfügbar und enthalt halt firmenangaben. von daher weiß ich nicht wieviel ich da zeigen soll/muss/darf.
    mitm großzügigen timer gehts aber auch denke ich =)

  • richtiger contdown

    • sc4ry
    • 3. Mai 2007 um 14:20

    vllt hab ich auch im code was falsch, und denke nur dass er die seite nicht zuende lädt.
    wenn du mir helfen magst, poste ich es gerne nochmal.

    mal gucken ob ichs aufs wesentliche reduzieren kann *hehe*

    Spoiler anzeigen
    [autoit]

    #include <IE.au3>
    $sUrl = "Link1"
    $LinkProdukte = "Link2"

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ;starte ie-instanz
    $oIE = _IECreate ($sUrl,0,1,1,0)
    $oHWND = _IEPropertyGet($oIE, "hwnd")
    WinSetState ($oHWND, "", @SW_MAXIMIZE )

    [/autoit] [autoit][/autoit] [autoit]

    ;...
    ;loginseite wird geladen (bis sie komplett fertig ist)
    ;anschließend wird User/Pw eingegeben und abgeschickt
    ;es läd sich eine neue seite (bis zuende)
    ;dann kommt

    [/autoit] [autoit][/autoit] [autoit]

    ;lade neue seite
    _IENavigate($oIE, $LinkProdukte)

    [/autoit] [autoit][/autoit] [autoit]

    ;_IELoadWait($oIE) hat auch nix gebracht, aber die funktion ist auch in _IENavigate enthalten, so dass ich sie eigentlich rausgelassen habe

    [/autoit] [autoit][/autoit] [autoit]

    ;...
    ;hier soll auf was geklickt werden, dass aber erst da ist, wenn die seite komplett geladen wurde
    ;befehl wird aber sofort ausgeführt

    [/autoit]

    wie die seite aufgebaut ist, sieht man hier, falls es doch was damit zu tun haben könnte.
    oder liegt es daran, dass sich nach der loginseite eine neue seite aufbaut die nichtmehr $oIE ist? wobei er ja da noch wartet, bis sie fertig geladen ist.

    Dateien

    site.jpg 9,65 kB – 0 Downloads
  • richtiger contdown

    • sc4ry
    • 3. Mai 2007 um 13:45

    danke th.meger, das "geht" =)

    leider nicht ganz wie erwarte. zum einem bleibt der tooptip auf dem bildschirm (was nicht so schlimm wäre), zum anderen bricht er zwar den countdown ab, setzt das script aber nicht weiter fort.

    das prob ist, ich muss eine inet-site laden, mit den iefunctions wartet er aber nicht, bis fertig geladen wurde, da nur ein teil der site aktualisiert wird.
    also nutze ich sleep und nehm nen großzügigen wert.

    sollte die site nun schon nach 5 statt 20 sek fertig sein, soll man den timer mit einem tastendruck abbrechen können und das script läuft danach wie gewohnt weiter.
    das hier leider (noch) nicht der fall =/

    PS: ich glaube es hat sich erledigt =)

    so geht es

    Spoiler anzeigen
    [autoit]

    #include<Date.au3>
    #include <Misc.au3>

    $dll = DllOpen("user32.dll")

    $Countdown = "00:00:10"
    If _countDown($Countdown) Then ToolTip("")

    MouseClick("left", 1240, 188)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ;Countdown Function

    Func _countDown($Countdown)
    $begin = TimerInit()
    Local $string = ""
    While 1
    $start = Round(TimerDiff($begin) / 1000)
    $countUp = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", _
    Mod($start / 3600, 24), Mod(($start / 60), 60), Mod($start, 60))
    $sec = _DateDiff('s', "2006/01/01 " & $countUp, "2006/01/01 " & $Countdown)
    If $sec = 0 Then Return 1
    $string = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", _
    Mod($sec / 3600, 24), Mod(($sec / 60), 60), Mod($sec, 60))
    ToolTip($string)
    Sleep(1 )
    If _IsPressed("1b", $dll) Then
    ExitLoop
    EndIf
    WEnd
    EndFunc ;==>_countDown
    DllClose($dll)

    [/autoit]
  • richtiger contdown

    • sc4ry
    • 3. Mai 2007 um 11:49

    hiho,

    da ich die letzten tage frei hatte, konnte ich hier leider nicht weiterarbeiten.
    aber mein script nähert sich dem ende (freut euch *g*) und ich versuche jetzt diesen timer zu beenden.

    also per hotkeyset erstelle ich eine neue funktion.
    dann habe ich den countdown in einer funktion.

    wenn jetzt der "hotbutton" gedrückt wird, soll die countdown funktion beendet werden.
    und da liegt zZ mein prob. wie beende ich mit einer function eine andere function?

    also exit klappt super, aber da geht halt das ganze script aus. exitloop geht nur bei der eigenen function, 2 funktionen ineinander scheinen auch nicht zu gehen (fehlt immer wend) ....

    Spoiler anzeigen
    [autoit]


    HotKeySet("{space}", "_close")

    [/autoit] [autoit][/autoit] [autoit]

    $Countdown = "00:00:20"
    If _countDown($Countdown) Then MouseClick("left", 1157, 191)

    [/autoit] [autoit][/autoit] [autoit]

    ;Countdown Function

    [/autoit] [autoit][/autoit] [autoit]

    Func _countDown($countdown)
    $begin = TimerInit()
    Local $string = ""
    While 1
    $start = Round(TimerDiff($begin) / 1000)
    $countUp = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", _
    Mod($start / 3600, 24), Mod(($start / 60), 60), Mod($start, 60))
    $sec = _DateDiff('s', "2006/01/01 " & $countUp, "2006/01/01 " & $countdown)
    If $sec = 0 Then Return 1
    $string = StringFormat("%.02d" & ":" & "%.02d" & ":" & "%.02d", _
    Mod($sec / 3600, 24), Mod(($sec / 60), 60), Mod($sec, 60))
    ToolTip($string)
    Sleep(100)
    WEnd
    EndFunc

    func _close()
    ExitLoop ;geht natürlich nicht
    EndFunc

    [/autoit]
  • DIM as double

    • sc4ry
    • 2. Mai 2007 um 23:23

    aaaaaah, ok, mein fehler *g*

  • DIM as double

    • sc4ry
    • 2. Mai 2007 um 23:18

    also ehrlich gesagt funzt das nicht @th.meger

    ich bekomme zwar keine fehlermeldung mehr (hatte ein & zuviel), aber in ner neuen zeile schreibt er trotzdem net.

    aber huggys tip geht, werd ich einfach so machen, thx euch beiden =)

  • DIM as double

    • sc4ry
    • 2. Mai 2007 um 23:07

    wo wir schon bei vba und autoit sind, wie kann ich denn in eine neue zeile schreiben?

    ich hab zwar schon als hilfe das ein oder andere script gesehen, dass dann (wie bei vba) mit & _ & aufgebaut war, aber scite wollte es nie ausführen, so dass ich es immer weggemacht habe.

    aber jetzt kommt ich das in nem gui gebrauchen.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™