Über GUi Daten einbringen

  • Hallo liebe Community,
    Ich bräuchte wiedereinmal ein bisschen Hilfe ;)

    Ich habe ein Programm geschrieben, welches eine Exceltabelle formatiert, in der verschiedene Kampagnen eingetragen sind.
    Das Programm arbeitet zur Zeit allerdings mit Absoluten Werten, z.B. steht der Kampagnenname im Quellcode. Wenn nun eine neue Kampagne hinzukommt, muss ich immer den Quellcode aktualisieren. Allerdings würde ich gerne die Kampagnen über ein GUI einpflegen.
    Gibt es diese Möglichkeit und wie kann ich dann Autoit beibringen, den Vorgang für jede Kampagne zu wiederholen?

    Danke schonmal im Vorraus
    TheLuBu

  • Lagere deine Daten in eine Datei aus, dann musst du nicht jedes Mal den Quellcode ändern.
    Je nachdem, wie dein Datenformat aussieht (ich vermute mal Text&Ziffern) kommst du mit einigen Zeilen Code aus um die Exceltabelle zu füllen. AutoBert hat bereits darauf hingewiesen, ohne den bisherigen Quellcode (oder Beispiele bzw Auszüge) ist differenzierte weitergehende Hilfe nicht möglich.

  • Vielen Dank für die Antworten schonmal,
    hier dein Teil meines Programms.

    Es geht halt um die Pfade, die jede Kampagne unterscheidet als auch der Dateinamen, welcher unterschiedlich ist.

    Spoiler anzeigen
    [autoit]


    #include <Excel2.au3>
    #include <File.au3>
    #include <Array.au3>
    #include <WinAPI.au3>
    #include <FTPEx.au3>
    #include <Date.au3>
    #Include <Clipboard.au3>

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

    Global $Paused
    HotKeySet("{PAUSE}", "TogglePause")
    HotKeySet("{ESC}", "Terminate")
    Func TogglePause()
    $Paused = Not $Paused
    While $Paused
    Sleep(100)
    ToolTip('Script ist pausiert', 0, 0)
    WEnd
    ToolTip("")
    EndFunc ;==>TogglePause
    Func Terminate()
    Exit
    EndFunc ;==>Terminate

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

    AutoItSetOption("TrayIconDebug", 1)
    $FTP = _FTP_Open("Usage")
    $Conn = _FTP_Connect($FTP, "192.168.2.11", "Benuttzername", "Passwort")

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

    $Datum = _NowCalcDate()
    $Datumsplit = StringSplit($Datum, "/")
    $iYear = $Datumsplit[1]
    $iMonth = $Datumsplit[2]
    $iDay = $Datumsplit[3]
    $Montagdatum = _DateToDayOfWeek($iYear, $iMonth, $iDay)
    If $Montagdatum = 1 Then
    $iDay = $iDay - 6
    ElseIf $Montagdatum = 7 Then
    $iDay = $iDay - 5
    ElseIf $Montagdatum = 6 Then
    $iDay = $iDay - 4
    ElseIf $Montagdatum = 5 Then
    $iDay = $iDay - 3
    ElseIf $Montagdatum = 4 Then
    $iDay = $iDay - 2
    ElseIf $Montagdatum = 3 Then
    $iDay = $iDay - 1
    EndIf
    ;~ $Montagdatum = _DateToDayOfWeek($iYear, $iMonth, $iDay)
    $Yearsplit = StringSplit($iYear, "")
    $DatumJJ = $Yearsplit[3] & $Yearsplit[4]

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

    If $iMonth = 01 Then
    $Monat = "01_Januar"
    $Monat1 = "Januar"
    ElseIf $iMonth = 02 Then
    $Monat = "02_Februar"
    $Monat1 = "Februar"
    ElseIf $iMonth = 03 Then
    $Monat = "03_März"
    $Monat1 = "März"
    ElseIf $iMonth = 04 Then
    $Monat = "04_April"
    $Monat1 = "April"
    ElseIf $iMonth = 05 Then
    $Monat = "05_Mai"
    $Monat1 = "Mai"
    ElseIf $iMonth = 06 Then
    $Monat = "06_Juni"
    $Monat1 = "Juni"
    ElseIf $iMonth = 07 Then
    $Monat = "07_Juli"
    $Monat1 = "Juli"
    ElseIf $iMonth = 08 Then
    $Monat = "08_August"
    $Monat1 = "August"
    ElseIf $iMonth = 09 Then
    $Monat = "09_September"
    $Monat1 = "September"
    ElseIf $iMonth = 10 Then
    $Monat = "10_Oktober"
    $Monat1 = "Oktober"
    ElseIf $iMonth = 11 Then
    $Monat = "11_November"
    $Monat1 = "November"
    ElseIf $iMonth = 12 Then
    $Monat = "12_Dezember"
    $Monat1 = "Dezember"
    EndIf
    DirCreate("C:/Exel/")
    Local $h_Handle
    $FTPdir = _FTP_FindFileFirst($Conn, "DE_HSP_" & $Monat1 & "_" & $DatumJJ & "/export/", $h_Handle)
    If @error Then
    $DEHSP = 0
    Else
    $GetFile = _FTP_FileGet($Conn, "DE_HSP_" & $Monat1 & "_" & $DatumJJ & "/export/" & $FTPdir[10], "C:/Exel/" & $FTPdir[10] & "DEHSP", "True")
    $DEHSP = 1
    $Excelexist = 0
    While $Excelexist = 0
    $Excelcheck = FileExists("C:/Exel/" & $FTPdir[10] & "DEHSP")
    If $Excelcheck = 1 Then
    $Excelexist = 1
    EndIf
    WEnd
    $oExcel = _ExcelBookOpen("C:/Exel/" & $FTPdir[10] & "DEHSP")
    WinWait("Microsoft Excel - " & $FTPdir[10] & "DEHSP")
    _FTP_FindFileClose($h_Handle)
    EndIf

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

    $FTPdir = _FTP_FindFileFirst($Conn, "DE_SPP_" & $Monat1 & "_" & $DatumJJ & "/export/", $h_Handle)
    If @error Then
    $DESPP = 0
    Else
    $GetFile = _FTP_FileGet($Conn, "DE_SPP_" & $Monat1 & "_" & $DatumJJ & "/export/" & $FTPdir[10], "C:/Exel/" & $FTPdir[10] & "DESPP", "True")
    $DESPP = 1
    $Excelexist = 0
    While $Excelexist = 0
    $Excelcheck = FileExists("C:/Exel/" & $FTPdir[10] & "DESSP")
    If $Excelcheck = 1 Then
    $Excelexist = 1
    EndIf
    WEnd
    $oExcel2 = _ExcelBookOpen("C:/Exel/" & $FTPdir[10] & "DEHSPP")
    WinWait("Microsoft Excel - " & $FTPdir[10] & "DESPP")
    _FTP_FindFileClose($h_Handle)
    EndIf
    _ExcelColumnInsert($oExcel2, 6)
    If $DESPP = 1 Then
    $Range = _ExcelSheetUsedRangeGet($oExcel2, 1)
    _ExcelCopy($oExcel2, 1, 1, $Range[3], 19)
    $Range1 = _ExcelSheetUsedRangeGet($oExcel, 1)
    Sleep(5000)
    _ExcelPaste($oExcel, $Range1[3] + 1, 1)
    EndIf
    _ClipBoard_Empty()

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

    _ClipBoard_Empty()
    If $DEHSP = 1 Then
    _ExcelBookSave($oExcel)
    EndIf
    If $DESPP = 1 Then
    _ExcelBookClose($oExcel2, 1, 0)
    EndIf
    _ExcelRowDelete($oExcel, 1)
    _ExcelBookSave($oExcel)

    [/autoit]