Jump to content

blob

Members
  • Gesamte Inhalte

    399
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von blob

  1. Hallo, ich habe es geschafft, mittels VBS in einer Gruppe die Member in eine TXT auszulesen. Jetzt würde ich gerne ein kleines Script schreiben, wo bei Usern die Gruppenzugehörigkeit in ein TXT File schreibt, scheitere aber. Die Suche hat mir nicht geholfen. Script Center von MS auch nicht. Also ich will die vbs starten, dann soll eine input Box kommen in der ich den "displayname" eingebe. Anschließend soll der User in meiner definierten Domäne gesucht werden (ldap über ein Query?), bei Erfolg dann die Member of Liste in eine TXT Datei ausgegeben werden. Ich bitte um Hilfe, evtl. gibt es schon etwas das ich nur auf meine Wünsche anpassen muss. Was ich auf keinen Fall will, ist dass ich Dinge wie OU und Username angeben muss, da ich nicht auf Anhieb weiss in welcher OU sich der User befindet, dessen member of ich auslesen möchte. Danke im voraus!
  2. Hallo! Habe eine Frage: Ich erstelle mal hier und mal da Scripts mit VBS oder Powershell. Jetzt will ich nicht dauernd einen Link zu einem Ordner aufrufen, wo alle Scripts hinterlegt sind. Sondern auf dem Desktop eine Verknüpfung haben, dass mir ein Fesnter startet in dem ich z.B. 10 Buttons habe die beschriftet sind, wenn ich auf Button 1 klicke dann soll es mir mein test1.vbs starten, der zweite Button soll mir test2.vbs starten usw usw usw Kann mir jemand einen Rat geben wie ich das einfach lösen könnte?
  3. ähm, benötige doch nochmal kurz Hilfe... warum kommt hier die Fehlermeldung, dass das System die angegebene Datei nicht gefunden hat? et objShell = WScript.CreateObject("WScript.Shell") return = objShell.Run("c:\xcacls.exe C:\TEST >>C:\log.txt") Set objShell = Nothing Ordner existiert, xcacls.exe funktioniert auch. Was mache ich falsch? Merci im voraus.
  4. Powershell kommt bei uns erst noch, derzeit noch nirgends installiert und auch nicht freigegeben :-( Habe mir xcacls angeschaut, die ältere .exe Version und die aktuelle .vbs Funktion. Mal sehen ob ich die vbs Version nach meinen Wünschen so verbiegen kann, damit meine gewünschte Formatierung erscheint. Merci nochmal!
  5. Hallo, ich wollte zu dem Thema jetzt mich nochmal schlau machen. Mittlsl Rechtklick auf \\server\ordner kann ich mir ja die ACL anzeigen lassen. Da muss es doch auch möglich sein, die ACL über Netzwerkpfade mit VBS auszulesen?! Das obere Script kann man vergessen und einen neuen Ansatz finden. Oder evtl. ist das überhaupt nicht möglich? Zur Not würde ich im VB Script die Abfrage der ACL über ein Drittanbieter Tool starten. AccessEnum.exe arbeitet aber leider nicht ohne die grafische Oberfläche (oder ich bin zu dumm um /? zu starten). Danke im voraus.
  6. Hallo again, sorry, habe mich etwas **** ausgedrückt. Ich habe ja schon den Pfad des Ordners, dessen Unterordner ich bis zur 2ten Ebene listen will. Also alle Subfolders von (z.B.) C:\Windows und dann wiederrrum deren Subfolders. Haben nun diese Subfolders wiederum weitere Subfolders, sollen die nicht ins Logs geschrieben werden, also alles bis zur zweiten Ebene meinte ich :-) Hat da jmd eine Function o. Sub, mit der ich die Ebene bestimmen kann? Trotzdem Danke für den Code!
  7. Hallo! Ich hatte mal so ein tolles Script welches mir einen angegeben Ornder und die erste Ebene an Unterordner ausgelesen hat. Nur ich finde es nicht mehr und auch nicht im Netz! :-( Nochmal im Detail: Ich habe den Ordner X im Script angegeben. Er schreibt mir den Ordnernamen "X" inkl. Pfad in eine TXT Datei. Anschließend geht es an die Unterordner. Diese schreibt er mir auch brav mit Pfad in eine TXT Datei. Diese Unterordner haben noch mehrere weitere Unterordner, aber die sollen nicht in die TXT Datei geschrieben werden! Hat da jmd zufällig ne Funktion zur Hand? Ich bekomme es eben nur hin, dass er komplett alles ausliest. Merci im voraus!
  8. Durch Zufall bin ich auf ein fertiges Script gestoßen, dass wie folgt die Werte übergibt: oExcel.cells(x, y).value = CDbl(Array(2)) Habe es nun auch so eingebunden mit dem CDbl, und siehe da, es funktioniert!
  9. So, habe alles gefunden. In ein anderes Worksheet wechseln und dort eine Zelle auswählen und formatieren, z.B. eine Formel hinterlegen: Set oExcel = CreateObject("Excel.application") Set oWB = oExcel.Workbooks.Add Set oWS = oWB.Worksheets("Sheet40") 'x ist eine Variabel die z.B. durch eine Schleife hochgezählt wird strTabelle = "Tabellenblatt01" strFormel = "=" & strTabelle & "!" & "C3:C"& x With oWS.range("D5") .formula = strFormel .font.Bold = True End With cu
  10. Hallo, kaum habe ich das eine Problem gelöst, stehe ich schon vor dem nächsten Problem. Und zwar lese ich mit einem VBS Script Zahlen in dem Format "0,000" aus einer TXT Datei, anschließend fügt dieses Script die gefüllten Variabeln in Excel (2007) ein. Problem ist: Eine Zahl kleiner als 1 (z.B. 0,543) wird korrekt übermittelt, allerdings mit einem Fehlerhinweis in Excel und ich muss per Hand den Text in eine Zahl konvertieren. Ist eine Zahl größer als 1 (z.B. 32,453) dann macht Excel aus der Variabeln, die es bekommt, einen Punkt anstatt einem Komma, also plötzlich steht der Wert in Excel als z.B. "34.323". Wenn ich dann z.B. das Feld konvertiere das es Zahl u. 2 Dezimalstellen anzeigen soll, steht im Feld logischerweise dann "34323,000" was total falsch ist. Hat jemand einen Rat? Evtl. muss ich vor dem Einfügen die Variable in eine Zahl umwandeln? Nur wie geht das?
  11. So, bin nun ein Stück weiter, aber benötige doch jetzt gezielt ein wenig Hilfe: Ich möchte vom aktiven Worksheet auf ein anderes wechseln. Wie müsste der Code aussehen? Meiner funktioniert nicht: Set oExcel = CreateObject("Excel.application") oExcel.Visible = True oExcel.Workbooks.Add oExcel.ActiveSheet.delete oExcel.ActiveSheet.delete oExcel.ActiveSheet.name = "Zusammenfassung" oExcel.Worksheets.Add oExcel.ActiveSheet.name = "Testblatt2" 'ab hier klappt es nicht, also das springen auf existierende Worksheets oExcel.ActiveWorkbook.Sheets("Zusammenfassung") dann möchte ich im aktiven Worksheet eine Zelle auswählen, und eine Formel hinterlegen. Mein folgender Code klappt auch noch nicht: Set oSheet = oExcel.Cells(4, 4) oSheet.formula = "=" & VariableMitTabellenblattNamen & "!" & "A3:A"& n & """" 'soll im Klartext heissen: "=Tabelle1!A3:A20" Und zu guter Letzt: Wie formatiere ich eine Zelle, damit die Zelle weiss mein Inhalt ist eine Zahl? Habe es leider bis jetzt noch nicht gefunden :-( *help*
  12. So, habe es nun anderst gelöst: Set ocountListe = CreateObject("Scripting.FileSystemObject") Set ocountListe2 = ocountListe.OpenTextFile(strFile, ForReading) Do While ocountListe2.AtEndOfStream <> True m = m + 1 strreadfinalline = ocountListe2.ReadLine arrayinhalt = Split(strreadfinalline, ";") oExcel.cells(m, 1).value = arrayinhalt(0) oExcel.cells(m, 2).value = arrayinhalt(1) oExcel.cells(m, 3).value = arrayinhalt(2) n = m Loop Thx @ all
  13. Nachtrag: Habe ein Beispiel gefunden mit einem statischen Array. Man müsste nur noch hinbekommen, das die Werte aus der TXT Datei geholt werden und das Array dynamisch ermittelt wird, damit beim einfügen in Excel die Größe der Range ermittelt werden kann: ' Create an array to set multiple values at once. Dim saNames(5, 2) As String saNames(0, 0) = "John" saNames(0, 1) = "Smith" saNames(1, 0) = "Tom" saNames(1, 1) = "Brown" saNames(2, 0) = "Sue" saNames(2, 1) = "Thomas" saNames(3, 0) = "Jane" saNames(3, 1) = "Jones" saNames(4, 0) = "Adam" saNames(4, 1) = "Johnson" ' Fill A2:B6 with an array of values (First and Last Names). oSheet.Range("A2", "B6").Value = saNames Aber da scheitere ich schon... hat da jmd einen Lösungsansatz?
  14. Also: Mein VB Script ermittelt auf einem Fileserver die erste Ordnerebene, liest den Pfad, die ACL und die Größe des Verzeichnis aus. Das wird dann in eine Textdatei geschrieben, siehe ganz oben an meinem Beispiel wie es aussieht. Nachdem ein Ordner abgearbeitet ist, wird in die TXT ein vbnewline hinzugefügt und der nächste Ordner wird "untersucht". Ich könnte die Werte direkt in Excel schreiben, aber aus 2 Gründen nicht: a) ich will die Werte erst Kontrollieren bevor die Excel Tabelle gefüllt wird und b) bis alle Ordner untersucht wurden, gehen schonmal 12 Stunden ins Land. Und die txt Dateien in Excel per Hand importieren ginge auch, aber es sind einige Worksheets => dauert lange da es ca. 30 TXT Dateien sind => ergo darum hat mein Script die "Importiere es mir in Excel" - Funktion an der ich gerade dran bin ;-) ich muss diese Ergebnis TXT Dateien die mir mein Script liefert (siehe wieder oben) in ein Array schreiben... da es 3 Spalten in Excel wären muss ich die TXT in ein dreidimensionales Array einlesen.... Array(0,x) soll die Pfade enthalten (also Spalte A in Excel), Array(1,x) soll den Usernames beinhalten (also Spalte B in Excel) und Array(2,x) soll die Ordnergrößen beinhalten (also Spalte C in Excel). Ich will es jetzt auch nicht so kompliziert machen und das Script posten da es mehrere hundert Zeilen lang ist und ich ja nur wissen will: ich habe eine TXT Datei mit 3 Variabeln in einer Zeile, getrennt durch ";" und danach neue Zeile und wieder die 3 Variabeln getrennt durch ";" usw
  15. Hallo @ *! Ich komme einfach nicht drauf, wie ich dynamisch ein 3 dimensionales Array erstellen kann. Eine TXT Datei wird ausgelesen und soll in diesem Array landen, diese ist wie folgt aufgebaut: \\srv\pfad1\pfad2;mustermann;34,467657856 \\srv\pfad1\pfad3;mustermann1;334,4456757856 \\srv\pfad1\pfad4;mustermann2;1,321443543 \\srv\pfad1\pfad5;mustermann3;4,678676777 ... usw In der Reihe ist es also Punkt-Komma separiert. So soll es in einem Array landen, damit ich es nach Excel schreiben kann: Array(0,0) = \\srv\pfad1\pfad2 Array(0,1) = mustermann Array(0,2) = 34,467657856 Array(1,0) = \\srv\pfad1\pfad3 Array(1,1) = mustermann2 Array(1,2) = 334,4456757856 usw Da ich nicht weiss wieviele Zeilen in einer TXT Datei stehen, muss das Array dynmaisch sein und am besten eine Variable haben, die hochgezählt wird damit ich beim Excel Import die Range angeben kann. Ich weiss wie ich es für ein eindimensionales Array hinbekommen würde, bekomme es aber nicht auf 3 Spalten umgebogen :-(
  16. Danke für die vielen Info's, ich arbeite das dann jetzt erstmal durch. Danke nochmal!
  17. Uff von Access habe ich leider keine Ahnung, um damit auch noch zu arbeiten :-( Also muss ich wohl davon ausgehen das kein "HowTo" oder eine Reference für meinen Wunsch überhaupt existiert. Muss ich mir wohl ab Heute die Befehle "ergoggeln".
  18. Wäre natürlich die eine Möglichkeit, oder natürlich alle Befehle im einzelnen er-goggeln, was man gerade benötigt ;-) Aber das verdoppelt natürlich die Zeit bis zum fertigen Skript ums doppelte, was ich gerne verhinden möchte. :-(
  19. Hallo! Ich finde nichts bei Google. Vll kennt jmd hier einen tollen Link? Und zwar möchte ich mit meinem VBScript Excel aufrufen und Worksheets anlegen, Zellen formatieren etc etc etc ich weiss zwar wie ich mir die Applikation hole (Set oExcel = CreateObject("Excel.application")), kenne aber die ganzen Befehle nicht wie z.B. oExcel.Workbooks.Add; im Internet finde ich natürlich vereinzelte Befehle aber ich hätte gerne sowas wie eine Refferenz dazu oder eine einfache Auflistung der VBS Excel Befehle mit kurzer Beschreibung. Gruß
  20. omg, ich habe .size total übersehen... fand es schon komisch das ich von diesem Objekt diese Eigenschaft nicht abrufen konnte ;-) Danke, klappt wunderbar!
  21. Hallo again! Versuche mit VBS die größe eines Ordners zu ermitteln. Ich habe hier eine "diruse.exe", mit der ich die Größe des angegebenen Pfades ermitteln kann (Vielleicht kennt jemand das Tool?). Aber ich weiss nicht wie ich das in mein VBS Script einbaue, also ungefähr so (von der Logik gemeint): strPfad = "\\server\ordner\" Ruf mir diruse.exe auf mit Variable strPfad Gib mir die Ordnergröße in mein VB Script wieder in eine neue Variable Oder gibt es sogar in VBS ein Befehl, mit dem ich die Ordnergröße ermitteln kann? Wäre mir sogar lieber :-) Danke im voraus!
  22. jau! Das war der Befehl! Danke Cybquest :-) Aber der Beitrag von Blub ist auch nicht schlecht, zumal weil man dort die DCs im kompletten Forest sieht! Mercüüüü
  23. Hallo zusammen, ich habe es irgendwo mal gesehen, ich komme aber nicht drauf ob es ein cmd-Befehl unter Windows war oder ein kleines Script - Ich will mir alle DC's anzeigen lassen. In einer fremden Domäne mit hundert verstreuter Server sehr hilfreich. Ich finde es abern icht mehr :-( Kann mir jemand helfen? Thx
  24. so, habe nun über den Workaround von Cybquest gelöst, danke dafür! Habe eine Textdatei mit den ganzen Pfaden, die ich auslesen möchte erstellt und lese die Zeilen nach und nach ein, verbinde damit ein Laufwerk, lese meine Infos aus und trenne es wieder. :-) Danke nochmal für die Hilfe!
×
×
  • Neu erstellen...