Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

VBS - Alle Files mit einer bestimmten Endung zählen (mit allen Unterordnern)

Frage Entwicklung VB for Applications

Mitglied: TuXHunt3R

TuXHunt3R (Level 3) - Jetzt verbinden

05.08.2009, aktualisiert 22:37 Uhr, 11340 Aufrufe, 2 Kommentare, 1 Danke

Hallo ans Forum

Ich will in einem Ordner und allen Unterordnern alle Dateien mit einer bestimmten Endung zählen. Folgendes habe ich bereits:
01.
Function DoFolders(Fld, Typ, Counter) 
02.
                     Set objFSO = CreateObject("Scripting.FileSystemObject") 
03.
	Set Folder = ObjFSO.GetFolder(Fld) 
04.
	For Each SubFolder In Folder.SubFolders 
05.
		DoFolders SubFolder, Typ, Counter 
06.
	Next 
07.
	 
08.
	For Each File In Folder.Files 
09.
		Set objFile = objFSO.GetFile(File) 
10.
		if lcase(objFSO.GetExtensionName(objFile)) = lcase(Typ) Then 
11.
			Counter = Counter + 1 
12.
		End if 
13.
	Next   
14.
                     DoFolders = Counter 
15.
End Function
Das Ziel ist, dass der Rückgabewert der Funktion der Anzahl Dateien dieses Dateityps entspricht. Mit dieser Funktion stimmt das Ergebnis allerdings nicht, da die Countervariable bei jedem Selbstaufruf wieder überschrieben wird. Offenbar fehlt mir das logische Vorstellungsvermögen oder sonst irgendwas, aber ich komme nicht auf die richtige Lösung, wie man dies lösen kann. Was muss ich tun, um die richtige Anzahl zu bekommen? Ich habe einen Blackout und mein Programmiermentor ist momentan in den Ferien....

Gruss TuXHunT3R
Mitglied: AndreasHoster
05.08.2009 um 11:33 Uhr
2 Möglichkeiten:
1. Die Variable global definieren und gar nicht übergeben sondern immer mit der globalen arbeiten. Wobei globale Variablen fehleranfällig sind.
2. Den Rückgabewert der Funktion auch VERWENDEN.
In Zeile 5 übergibst Du zwar den Wert Counter, aber der Rückgabewert, wieviele in dem Ordner gefunden werden, wird verworfen.
Eventuell so (nicht getestet):
01.
counter = counter + DoFolders(SubFolder, Typ, Counter)
Bitte warten ..
Mitglied: TuXHunt3R
05.08.2009 um 22:37 Uhr
Herzlichen Dank für die Antwort.
Ich habe nun die beiden Variablen mit "public MyVar" global definiert, mein Problem ist soweit gelöst.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Dateien in einen Ordner zählen mit einer bestimmten Dateiendung (4)

Frage von tommhii zum Thema Batch & Shell ...

Batch & Shell
gelöst Datei-Endungen, Listen und Sortierung (Batch) (5)

Frage von clragon zum Thema Batch & Shell ...

VB for Applications
gelöst Bestimmtes Arrayfeld mit Variable aufrufen? - VBS (10)

Frage von gabrixl zum Thema VB for Applications ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
gelöst Raid-Controller (Areca) Datenverlust trotz R5 (16)

Frage von sebastian2608 zum Thema Festplatten, SSD, Raid ...

Server-Hardware
HP ProLiant DL380 G7, POST Error: 1785-Drive Array not Configured (10)

Frage von Paderman zum Thema Server-Hardware ...

Server-Hardware
Starker PC zum Virtualisieren (10)

Frage von canlot zum Thema Server-Hardware ...

Microsoft Office
gelöst Office 365 Pro Domäne einrichten OHNE Webseite (9)

Frage von thklemm zum Thema Microsoft Office ...