VBA IN VBS konvertieren // umwandeln

  • VBScript

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von sajodino.

    VBA IN VBS konvertieren // umwandeln

    Hallo, ich habe mein Script soweit fertig. Diesen jedoch in vba programmiert. Ich müsste in VBS umprogrammieren und wollte fragen wie hoch der aufwand wäre

    Es geht mir nicht darum den code zu posten und dann zu hoffen , dass jemand diesen umproggt. Möchte das schon gern selbst machen.

    Ja, ich bin ein Anfänger und hab das etwas verpeilt mit vba und vbs. Das skript soll in einer Windowsumgebung laufen, ohne das Excel genutzt wird.

    Welche Möglichkeiten gibt es für mich für dieses Problem?

    Ich post den Code jetzt nur um den Aufwand einzuschätzen

    Visual Basic-Quellcode

    1. Dim fso As Object, f1 As Object, f2 As Object
    2. Dim ordner1 As String, ordner2 As String, ordner3 As String, ordner4 As String
    3. Const Ziel = "C:\Zielordner\"
    4. Const Ziel1 = "C:\Zielordner\1\"
    5. Const Ziel2 = "C:\Zielordner\2\"
    6. ordner1 = "J:\DAS\exceltemp"
    7. ordner3 = "J:\DAS\exceltemp\1"
    8. ordner4 = "J:\DAS\exceltemp\2"
    9. ordner2 = "c:\Quelle"
    10. Set fso = CreateObject("Scripting.FileSystemObject")
    11. Set objTextFile = fso.CreateTextFile("c:\" & Format(Now, "dd.mm.yyyy_HH-MM-SS") & " Watchdog.txt", True)
    12. objTextFile.WriteLine ("Watchdog gestartet...." & Format(Now, "dd.mm.yyyy_HH-MM-SS"))
    13. If fso.FolderExists(ordner1) And fso.FolderExists(ordner2) Then
    14. Set f1 = fso.GetFolder(ordner1)
    15. Set f2 = fso.GetFolder(ordner2)
    16. objTextFile.WriteLine ("Die Ordner sind gleich // Kopiervorgang gestartet... ")
    17. If f1.Files.Count = f2.Files.Count And _
    18. f1.SubFolders.Count = f2.SubFolders.Count And _
    19. f1.Size = f2.Size Then
    20. For Each oFile In fso.GetFolder(ordner1).Files
    21. If Not (InStr(1, fso.GetFileName(oFile.Path), "ERR", 1) > 0) Then
    22. If Not fso.FileExists(Ziel & oFile.Name) And fso.FolderExists(Ziel) Then
    23. fso.CopyFile oFile.Path, Ziel
    24. Else
    25. objTextFile.WriteLine ("Die Datei: " & oFile.Name & " aus dem Ordner " & ordner1 & " existiert in " & Ziel & " schon")
    26. End If
    27. End If
    28. Next
    29. For Each oFile In fso.GetFolder(ordner3).Files
    30. If Not (InStr(1, fso.GetFileName(oFile.Path), "ERR", 1) > 0) Then
    31. If Not fso.FileExists(Ziel1 & oFile.Name) And fso.FolderExists(Ziel1) Then
    32. fso.CopyFile oFile.Path, Ziel1
    33. Else
    34. objTextFile.WriteLine ("Die Datei: " & oFile.Name & " aus dem Ordner " & ordner3 & " existiert in " & Ziel1 & " schon")
    35. End If
    36. End If
    37. Next
    38. For Each oFile In fso.GetFolder(ordner4).Files
    39. If Not (InStr(1, fso.GetFileName(oFile.Path), "ERR", 1) > 0) Then
    40. If Not fso.FileExists(Ziel2 & oFile.Name) And fso.FolderExists(Ziel2) Then
    41. fso.CopyFile oFile.Path, Ziel2
    42. Else
    43. objTextFile.WriteLine ("Die Datei: " & oFile.Name & " aus dem Ordner " & ordner4 & " existiert in " & Ziel2 & " schon")
    44. End If
    45. End If
    46. Next
    47. Else
    48. objTextFile.WriteLine ("Die Ordner sind ungleich // Kopiervorgang nicht gestartet... ")
    49. End If
    50. End If
    51. objTextFile.WriteLine ("watchdog beendet !!" & Format(Now, "dd.mm.yyyy_HH-MM-SS"))
    52. Set fso = Nothing
    Auf den ersten Blick würde ich nur die Variablentypen entfernen. Unter VBS ist alles Variant.
    Ansonsten meckert er schon, normal inkl. Zeilennummer, wenn dem WScript was nicht passt.
    Gruß
    Peterfido

    Keine Unterstützung per PN!
    Hallo , danke euch Beiden für die Antworten. Also es funktioniert jetzt.

    Vorher hab ich mir eine Textdatei erstellt, welche unter VBA was reingeschrieben hat. Das funktioniert unter VBS nicht. Ist das bei VBS anders?

    Visual Basic-Quellcode

    1. Set objTextFile = fso.CreateTextFile("c:\\" & Format(Now, "dd.mm.yyyy_HH-MM-SS") & " Textdatei.txt", True)
    2. objTextFile.WriteLine (" GESTARTET" & Format(Now, "dd.mm.yyyy_HH-MM-SS"))


    Habs selbst rausgefunden. Objekt hat gefehlt. Danke für die Hilfe!

    Gruß

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „sajodino“ ()