Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Verzeichnisgrösse ermitteln und als Excel Datei speichern

Frage Entwicklung Batch & Shell

Mitglied: Powerwater

Powerwater (Level 1) - Jetzt verbinden

04.04.2008, aktualisiert 08.04.2008, 18258 Aufrufe, 12 Kommentare

Hallo,
Also mein Problem ist, dass ich eine batch oder Script Datei schreiben will wo mit ich aus Excel Tabelle verschiedene Links auslesen und Grösse ermitteln dann in Zelle neben speichern .

243512635dcf53a42444802623d4b5d3-excel - Klicke auf das Bild, um es zu vergrößern
3161b05738ba787da5db87de239fd948-te - Klicke auf das Bild, um es zu vergrößern
Vielen Dank fürs Antworten
Mitglied: 60730
04.04.2008 um 14:36 Uhr
Hi,

wie jetzt, du hast eine Excel Tabelle und willst aus einer Batch die Daten haben?

Schau mal nach diesem wunderschönen Teilchen Namens LOG PARSER.

http://www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8- ...

http://www.kaczenski.de/category/publikationen/ct-magazin-fur-computert ...

Dank an Nils Kaczenski und CT
Bitte warten ..
Mitglied: wakko
04.04.2008 um 15:02 Uhr
Hi,

ich denke, du meinst sowas für VBA:
01.
Function fileSizeinMB(path$) 
02.
Dim fs 
03.
Set fs = CreateObject("Scripting.FileSystemObject") 
04.
Dim dir, v 
05.
If fs.FolderExists(path) Then 
06.
   Set dir = fs.GetFolder(path) 
07.
   fileSizeinMB = dir.size / 1024 / 1024 
08.
End If 
09.
End Function
in ein Modul im vb-Editor einfügen (Excel-Mappe öffnen, alt+F11 drücken, im Projektbaum rechtsklick->Modul einfügen, Code in das Modul einfügen)
In b2 schreibst du dann
01.
=fileSizeinMB(A2)
, sollte dir die Ordnergröße rausschmeißen.

Hoffe die Antwort paßt zu deiner Frage...

Gruß,
Henrik
Bitte warten ..
Mitglied: Powerwater
04.04.2008 um 16:14 Uhr
Sory, ich war nicht deutlich,
Ich habe Aufgabe Speicherplatz zu ermitteln für verschiedene Abteilungen, Daten sind an mehreren Server verstreuet so habe ich für jede Abteilung eine Excel Tabelle mit dazugehörigen Verzeichnissen (Abteilung Ordner Struktur + Abteilungs-User Homes) aufgelistet. Jetzt mochte ich gerne diese Excel Tabelle mit einer Script oder vielleicht mit Makro verarbeiten so dass ich aktuell verbrauchten Speicherplatz bekomme.
Danke
Bitte warten ..
Mitglied: Powerwater
04.04.2008 um 19:46 Uhr
Hallo Henrik,
Ja, nun dass es irgendwie nicht funktioniere, kann es daran liegen das es für Datei Grösse gedacht ist und nicht Verzeichnis Grösse.
DANKE
Bitte warten ..
Mitglied: bastla
04.04.2008 um 20:28 Uhr
Hallo Powerwater!

wakko's Script arbeitet bei mir einwandfrei, gibt allerdings die Größe des Ordners (der Freigabe) samt aller Unterordner an ...

Falls Du nur die Dateien des angegeben Ordners berücksichtigen wolltest, müsste die Funktion etwa so aussehen:
01.
Function TotalFileSizesInMB(path) 
02.
Dim fs 
03.
Set fs = CreateObject("Scripting.FileSystemObject") 
04.
Dim dir, File, Total 
05.
If fs.FolderExists(path) Then 
06.
   Set dir = fs.GetFolder(path) 
07.
   For Each File In dir.Files 
08.
        Total = Total + File.Size 
09.
   Next 
10.
   TotalFileSizesInMB = Total / 1024 / 1024 
11.
End If 
12.
End Function
Zu verwenden ist auch diese Variante auf die gleiche Weise: in ein Modul der Arbeitsmappe kopieren und in der Tabelle aufrufen mit
01.
=TotalFileSizesInMB(A2)
Das könnte dann allerdings etwas dauern, da die Größe jeder Datei einzeln ermittelt werden muss ...

Grüße
bastla
Bitte warten ..
Mitglied: Powerwater
04.04.2008 um 20:43 Uhr
Hallo bastla,
Ich mache etwas falsch, kannst Du bitte Excel File als Antwort anhangen.
DANKE
Bitte warten ..
Mitglied: bastla
04.04.2008 um 21:00 Uhr
Hallo Powerwater!

Um die beiden Funktionen verwenden zu können, musst Du zunächst einmal über "Extras / Makro / Sicherheit" mit der Einstellung der Sicherheitsstufe "Mittel" das Ausführen von Makros erlauben. Nach einer Änderung dieser Einstellung Excel (nicht nur die Arbeitsmappe) schließen und neu starten.

Wenn Du nun Deine Mappe mit der Liste der Freigaben öffnest, kannst Du durch einen Rechtsklick auf das Blattregister ("Tabelle1" oder wie das Blatt auch heißt) und die Auswahl "Code anzeigen" den VBA-Editor starten.

Jetzt im Menü "Einfügen" den Punkt "Modul" auswählen. In das nun erscheinende große Fenster den geposteten Code der Funktion(en) einfügen.

Danach kannst Du zur Excel-Arbeitsmappe zurückkehren (Taskleiste oder erstes Symbol in der Symbolleiste bzw einfach VBA-Editor schließen) und die Funktion wie oben dargestellt in einer Zelle aufrufen.

Grüße
bastla
Bitte warten ..
Mitglied: Powerwater
05.04.2008 um 19:43 Uhr
Hallo
Es, funktioniert nur teilweise, nämlich makro zählt nur Daten die in dem Verzeichnis sind, alle unterverzeichnise zählt es nicht. wie kann ich es anpassen?
DANKE
Bitte warten ..
Mitglied: bastla
05.04.2008 um 20:24 Uhr
Hallo Powerwater!

Du kannst wakko's Version in das selbe Modul kopieren und einfach in der Tabelle die Formel
01.
=fileSizeinMB(A2)
verwenden, um das gewünschte Ergebnis zu erhalten.

Grüße
bastla
Bitte warten ..
Mitglied: Powerwater
05.04.2008 um 21:32 Uhr
Hallo bastla ,
Vielen Dank es funktioniert, habe allerdings noch ein Problem.
da ich sehr viele und sehr grosse verzeichnise habe dauert ewig bis die Tabelle bereit steht, fürs erstes mal ist es OK, danach möchte ich zusammen gestellte Daten schnell abrufen können. Gibt vielleicht eine Möglichkeit ein Button einzubauen der dann Aktion auslöst.
3161b05738ba787da5db87de239fd948-te - Klicke auf das Bild, um es zu vergrößern
Ihr seit besten Vielen dank
Powerwater
Bitte warten ..
Mitglied: bastla
07.04.2008 um 15:25 Uhr
Hallo Powerwater!

Eine relativ einfache Möglichkeit, die Berechnung nur bei Bedarf auszuführen, sähe so aus:

Füge in dem für die Functions verwendeten Modul noch folgendes Sub ein:
01.
Sub FileSize() 
02.
Dim Zelle  
03.
For Each Zelle In Selection.Cells 
04.
    Cells(Zelle.Row, "B").Value = fileSizeinMB(Cells(Zelle.Row, "A").Value) 
05.
Next 
06.
End Sub
Lösche in der Tabelle alle Formeln mit dem Aufruf der Funktion, also etwa "=fileSizeinMB(A2)"; wenn Du die derzeitigen Werte behalten möchtest, kannst Du auch einfach die gesamte Spalte markieren, diese kopieren und danach "Bearbeiten / Inhalte einfügen... / Werte" wählen.

Platziere in der Tabelle eine Schaltfläche (aus der Symbolleiste "Formular"), eine AutoForm oder ein Clipart und weise dieser/diesem per Rechtsklick das Makro "FileSize" zu.

Markiere nun für jede Zeile, in der eine Neuberechnung erfolgen soll, eine Zelle (Spalte egal, es wird aus der Markierung nur die Zeile ermittelt) und starte das Makro durch Klick auf Deine Schaltfläche.

Es wird nun für jede Zeile auf Basis des in Spalte A angegebenen Pfades der Platzbedarf neu ermittelt und in Spalte B dieser Zeile eingetragen, wobei der vorherige Wert überschrieben wird.

Die Beschreibung dieser Vorgangsweise bezieht sich zwar auf Excel 2003, sollte aber auch in anderen Versionen nachvollziehbar sein.

Grüße
bastla
Bitte warten ..
Mitglied: Powerwater
08.04.2008 um 14:36 Uhr
Es Funktioniert, Vielen Dank an Alle!
Bitte warten ..
Ähnliche Inhalte
Microsoft
Excel-Datei mit VBA speichern
gelöst Frage von 116408Microsoft6 Kommentare

Guten Tag Ich habe eine Excel-Datei, in der in D4 der Kundenname und in D11 das Projekt benennt wird. ...

Microsoft Office
Excel Dateien auf Desktop verschieben sich nach dem Speichern
Frage von michael1306Microsoft Office

Hallo zusammen, ich habe ein Problem. Auf einem Server mit Windows 2008 Server R2 Standard ist Office 2003 installiert. ...

Microsoft Office
Excel zeigt Speichern Unter Feld anstatt die Datei zu Öffnen
Frage von staybbMicrosoft Office1 Kommentar

Hallo, ich habe auf einem Windows 7 Rechner das Problem wenn ich irgend eine Excel Datei öffnen möchte, öffnet ...

VB for Applications
Datei mit variablem Namen einlesen und als Excel speichern
gelöst Frage von AnrionVB for Applications1 Kommentar

Hallo Forum, Ich habe ein Problem. -Es muss eine Datei (CLV) eingelesen werden. Öffne ich diese in Excel, so ...

Neue Wissensbeiträge
Windows 10

Windows 10 Fall Creators Update - Neue Funktion Hyper-V Standardswitch kann ggf. Fehler bei Proxy Configs verursachen

Erfahrungsbericht von rzlbrnft vor 7 StundenWindows 101 Kommentar

Hallo Kollegen, Da wir die Gefahr lieben, haben wir bei einigen Usern nun mittlerweile das Creators Update drauf. Einige ...

Sicherheit

TLS-Zertifikat und privater Schlüssel von Microsofts Dynamics 365 geleakt

Information von Penny.Cilin vor 9 StundenSicherheit

Microsoft hat versehentlich das TLS-Zertifikat inklusive dem privaten Schlüssel seiner Business-Anwendung Dynamics 365 geleakt. TLS-Zertifikat und privater Schlüssel von ...

Viren und Trojaner

Deaktivierter Keylogger in HP Notebooks entdeckt

Information von bitcoin vor 1 TagViren und Trojaner2 Kommentare

Ein Grund mehr warum man Vorinstallationen der Hersteller immer blank bügeln sollte Der deaktivierte Keylogger findet sich im vorinstallierten ...

Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 1 TagRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Firefox Profieles im Roaming
gelöst Frage von Hendrik2586Netzwerkmanagement17 Kommentare

Hallo liebe Leute. :) Ich hab da ein kleines Problem, welches anscheinend nicht unbekannt ist. Wir nutzen hier in ...

LAN, WAN, Wireless
Häufig Probleme beim Anmelden in WLAN
Frage von mabue88LAN, WAN, Wireless15 Kommentare

Hallo zusammen, in einem Netzwerk gibt es relativ häufig (1-2 mal pro Woche) Probleme mit der WLAN-Verbindung. Zunächst mal ...

Batch & Shell
Trusted Sites für alle User auf dem PC einpflegen
Frage von xXTaKuZaXxBatch & Shell12 Kommentare

Aufgabestellung: Es sollen auf 1 PC (bzw. mehreren PCs) vertrauenswürdige Sites per Powershell eingetragen werden, die für alle User ...

Netzwerkgrundlagen
Hi eine blöde frage. xD
Frage von 132954Netzwerkgrundlagen12 Kommentare

Also: Habe 2012 r2 essentials neuinstalliert, allerdings installiert diese version ja gleich diesen gangen AD kram mit, den hab ...