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. ugt100

Beiträge von ugt100

  • Filename welcher in einer (autoit) variablen steht an ein Excel makro übergeben ..

    • ugt100
    • 12. November 2009 um 17:29

    Hai all,


    also ich habe inzwischen eine gangbaren Weg gefunden - nicht charmant - aber es funzt .......
    ich schreibe den Filename in eine temp. Text Datei und hole die mit Excel wieder raus ...

    (also ähnlich wie der Vorschlag von vivus).

    Blöd ist nur das sich das temp File (warum auch immer) nicht mit dem letztem Befehl entweder im Excel Makro (Kill ....) oder im AutoIT Script (FileDelete ....) löschen lässt. Scheint irgendwie noch im Zugriff zu sein.

    Vielleicht hat ja jemand noch eine Idee.


    Allen ansonsten ein DANKE SCHÖN


    Gruss
    Chris :thumbup:

  • Filename welcher in einer (autoit) variablen steht an ein Excel makro übergeben ..

    • ugt100
    • 11. November 2009 um 16:59

    Hai all,
    habe da mal wieder eine Frage an die Profis,
    (wobei ich schon sehe, dass es sich ggf. eigentlich eher um ein VBA Problem/Thread handelt. Aber ich sicherlich nicht der Einzige sein sollte, der dieses Problem hat)

    Sollte ich trotz intensiver Suche einen entsprechenden Thread übersehen haben, Asche auf mein Haupt :!: :!: :S


    Also folgende Challenge habe ich:
    Innerhalb eines Autoit Scriptes werden Dateinamen (xyz.txt, 123.txt ...) on demand ermittelt und in Variablen geschrieben.
    Danach 'passiert' mit den Dateien einiges, bis diese letztendlich den endgültigen Status erreicht haben und abgespeichert werden (alles noch autoit).
    Im nächsten Schritt werden/müssen die Dateien mit Excel geöffnet und mittels eines VBA Scriptes weiterverarbeitet ....

    Soweit funktioniert dies auch bis auf die Tatsache, dass es mir nicht gelingt die bereits im AutoIT bekannten Dateinamen aus den entsprechenden Variablen bzw. die Variable selbst an das VBA Script zu übergeben, um dort den Dateinamen bekannt zumachen (zum Öffnen dieser Datei). Zur Zeit verwende ich noch den 'absoluten' Namen :( (was aufgrund der wechselnden Dateinamen nicht praktikabel ist)
    IST: Workbooks.OpenText Filename:="H:\123.txt" ------> SOLL: Workbooks.OpenText Filename:=$filenametxt
    (wobei (AutoIT Variable) $filenametxt = "H:\123.txt")

    hier ein Auszug aus den beiden Scripts

    1.) AutoIT Script
    $filenametxt = StringReplace($extract, ".zip",".txt") ;Variable die den Dateinamen im AutoIT Script zugewiesen hat ((z.Bsp. 123.txt)
    .....
    $sFilePath = "h:\Test.xls" ; Excel Datei mit dem weiterverarbeitenden Excel Makro
    $oExcel = ObjCreate("Excel.Application") ; Excel öffnen
    With $oExcel
    .Visible = $fVisible
    .WorkBooks.Open($sFilePath)
    .ActiveWorkbook.Sheets(1).Select ()
    $x = .Run("Makro1") ; MacroName
    EndWith

    2. VBA Script
    Workbooks.OpenText Filename:="H:\123.txt", Origin:=xlWindows, StartRow:=1, DataType:=xlFixedWidth, FieldInfo:= _
    Array(Array(0, 1), Array(41, 1), Array(89, 1), Array(99, 1), Array(108, 1), Array(185, 1)) _
    , TrailingMinusNumbers:=True
    .....
    Application.CutCopyMode = False
    Windows("Test.xls").Activate
    ActiveWorkbook.Close False
    Application.ScreenUpdating = True


    Für jede Anregung wäre ich dankbar ....
    Danke schon einmal im voraus ...

    Chris

  • Aus einer Info/About Box heraus per hinterlegtem Link den Mail Client starten ....

    • ugt100
    • 6. November 2009 um 15:47

    Hi Tobi, hi all

    das isses ... jetzt unterstreiche ich noch den link und c'est ca


    DANKE :thumbup:


    (Profi muesste man sein)

  • Aus einer Info/About Box heraus per hinterlegtem Link den Mail Client starten ....

    • ugt100
    • 6. November 2009 um 15:43

    Hi,

    an die in der Info Box angegebenen mailto adresse soll gemailt werden. Durch Anklicken eines 'hyperlinks' - wenn man so sagen will,

    wird der MailClient kontaktiert ....


    (Unter Html ist das ein einfacher link mit den Angaben )


    Ich hoffe jetzt versteht man es besser


    Gruss

    Chris

  • Aus einer Info/About Box heraus per hinterlegtem Link den Mail Client starten ....

    • ugt100
    • 6. November 2009 um 15:25

    Hi Ihr Profis,
    danke für die schnelle Antwort -schön und gut.

    Aber mein eigentliches Problem ist das Erzeugen des Links in der InfoBox und das Auswerten, dass dieser angeklickt wurde,

    Damit letztendlich der MailClient startet
    (Das Starten des MailClients über das DOS Commanf funzt prima)


    Oder habe ich da was nicht richtig gepeilt ???


    Gruss

    Chris :love:

  • Aus einer Info/About Box heraus per hinterlegtem Link den Mail Client starten ....

    • ugt100
    • 6. November 2009 um 15:07

    Hi all,
    mir gelingt es einfach nicht mittels eines hinterlegten Links in einer Info Box ein Mail (ala mailto:XXX.yyy@zzz.de?subject:blablabla)
    über den default mail client zu erstellen.

    Folgendes mache ich:
    - Aufruf der Info Box
    - darin ist ein Label XXX yyy (das soll der Link werden)

    Wenn Label XXX yyy angeklickt wird startet folgende Funktion
    Func _mailing()
    $address = "XXX.yyy@zzz.de?subject=1234:"
    RunWait(@comspec ' / c start"" " ' & $address & ' " ',"",@SW_Hide)
    EndFunc


    Frage: Wie mache ich aus dem Label einen 'klickbaren' Link der dann die Funs aufruft :P ?


    Danke an alle Profis

  • aus einer Do...Until Schleife heraus neben ESC als Abbruch Event den Abbruch mit $Gui_Event_Close herbeiführen

    • ugt100
    • 6. November 2009 um 13:51

    so - nun isser wieder da !!!


    Also alles gut - Danke an alle


    Gruss

    Chris

  • aus einer Do...Until Schleife heraus neben ESC als Abbruch Event den Abbruch mit $Gui_Event_Close herbeiführen

    • ugt100
    • 4. November 2009 um 13:53

    Hi Schnitzel,


    ja genau das ist die Sache. Mit der u.a.abgeänderten Variante funzt das zwar, aber das $GUI_EVENT_CLOSE reagiert ziemlich zeitversetzt.

    Mal schauen vielleicht gibt es ja noch andere Möglichkeiten

    $bStop = False
    HotKeySet('{ESC}', '_Stop')

    Do
    $nMsg = GUIGetMsg()
    If GUIGetMsg() = $GUI_EVENT_CLOSE Then
    Exit
    EndIf
    $iDiff = _DateDiff('s', '2010/08/15 08:00:00', _NowCalc())
    GUICtrlSetData($Timer, _SecondsToDateTime($iDiff))
    Sleep(500)

    Until $bStop

    Func _Stop()
    $bStop = True
    EndFunc ;==>_Stop

  • aus einer Do...Until Schleife heraus neben ESC als Abbruch Event den Abbruch mit $Gui_Event_Close herbeiführen

    • ugt100
    • 4. November 2009 um 12:06

    Hi all,
    irgendwie stehe ich seit gestrn auf dem Schlauch. Mir gelingt es einfach nicht aus einer Do...Until Schleife heraus neben ESC als Abbruch Event den Abbruch mit $Gui_Event_Close herbeiführen ....

    M.E. liegt das daran, dass ich den $GUI_EVENT_CLOSE innerhalb der Schleife herbeiführen muss. Und genau das klappt nicht

    ?(

    Vielleicht ist das ja ganz einfach - wenn man es weiss - Danke schon einmal im voraus für jedwede Hilfe


    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch

    $bStop = False
    HotKeySet('{ESC}', '_Stop')
    Do
    $iDiff = _DateDiff('s', '2010/08/15 08:00:00', _NowCalc())
    GUICtrlSetData($Timer, _SecondsToDateTime($iDiff))
    Sleep(500)
    Until $bStop
    Exit

    WEnd


    Func _Stop()
    $bStop = True
    EndFunc ;==>_Stop


    Gruss
    Chris

  • Aus der Haupttanwendung ein weiteres Fenster öffnen, dieses schliessen und zur Hauptanwendung zurückkehren

    • ugt100
    • 27. Oktober 2009 um 09:09

    Guten Morgen,
    da ich trotz intensiver Suche in den verschiedensten Quellen nichts finden konnte, frage ich hier nach.
    (Sollte ich vorhandene Lösungsansätze übersehen haben, sorry - bin aber erst kurz in Sachen Autoit unterwegs)

    Also nun zum Problem:

    Ich habe eine kleine Anwendung mit einer GUI. Über diese werden Daten eingegeben und berechnet.

    Löschen der Einträge / wiederholtes Rechnen, Abbruch usw... funzt prima.
    Um dem Anwenderlein eine kurze Hilfe an die Hand zu geben, habe ich ein Menue erzeugt, indem zu den einzelnen
    möglichen Operationen mittels Menueeintrag ein weitere GUI = Fenster zu öffnen ist. Dort wird kurz der Sinn der jeweiligen Operation erläutert. Soweit alles bestens ....

    Jetzt das eigentliche Problem:
    Die jeweiligen Menueeinträge = GUI od. neues Fenster haben alle einen OK Button zum Schliessen. Was mir jetzt überhaupt nicht gelingen will, ist es dieses Fenster (welches im Vordergrund steht - mit der kurzen Hilfe) über den OK Button zu schliessen und ins 'Hauptfenster' zurückzukehren.
    (Was geht ist das Schliessen dieses Fensters inhergehend mit dem Schliessen der Anwendung - was aber nicht das Ziel ist :-(( :love: )

    Hier der Code Snip:
    Case $infoitem
    GUISetBkColor(0xE0FFFF)
    $dlgAbout=GUISetState(@SW_SHOW)
    While 1
    Switch $nMsg
    ;~
    Case $GUI_EVENT_CLOSE
    ExitLoop
    ;~
    Case $InfoOK
    ?????????
    ExitLoop
    EndSwitch
    WEnd

    Wahrscheinlich ist das Ganze furchtbar einfach - wenn man es weiss !!!
    (Nach dem Motto: Kaum macht man es richtig - klappts)

    Danke schon einmal im voraus.

    Chris

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™