zyclop
Erfahrenes Mitglied
So mein Projekt geht Schritt für Schritt vorwärts *gedankengang: wo wäre ich wohl ohne Tutorials.de* Antwort: Am ....
Zu meinem Problem. Ich habe ja eine Routine welche Datensätze in ein Flexgrid ausliest, nun habe ich aber das Problem das Ordner ausgeschlossen werden sollen. Darum habe ich eine Routine eingebaut welche diese Überprüft - diese Funktioniert auch dank ein paar netten Jungs hier.
ÜBERPRÜFUNG
Mein Problem ist: Wenn diese If Abfrage beendet ist kommt der Code welche die Daten einträgt. Da ich aber in diesem Fall, falls chkAnOrdner = 1 soll der Ordner an_etc nicht hinein geschrieben werden aber Dateien und Ordner welche sich im Ordner befinden schon. Kompliziert? Ich weiss nicht wie ich es besser erklären soll.
Hier der Code der ganzen Routine
Versteht ihr was ich meine? i hope it
Zu meinem Problem. Ich habe ja eine Routine welche Datensätze in ein Flexgrid ausliest, nun habe ich aber das Problem das Ordner ausgeschlossen werden sollen. Darum habe ich eine Routine eingebaut welche diese Überprüft - diese Funktioniert auch dank ein paar netten Jungs hier.
ÜBERPRÜFUNG
Code:
If chkAnOrdner(0).Value = 1 Then
'If Überprüfung - Auschschliessung der Obersten Verzeichnisse
If LCase(Mid(objsubfolder.Name, 1, 3)) <> "an_" Then
End If
End If
Else
If chk_samOrdner(1).Value = 1 Then
If LCase(Mid(objsubfolder.Name, 1, 4)) <> "_sam" Then
MsgBox ("SAM ORDNER")
Else
End If
End If
Mein Problem ist: Wenn diese If Abfrage beendet ist kommt der Code welche die Daten einträgt. Da ich aber in diesem Fall, falls chkAnOrdner = 1 soll der Ordner an_etc nicht hinein geschrieben werden aber Dateien und Ordner welche sich im Ordner befinden schon. Kompliziert? Ich weiss nicht wie ich es besser erklären soll.
Hier der Code der ganzen Routine
Visual Basic:
'Rekursive Subprozedur zur Ordnerüberprüfung
Private Sub pSubScan(ByVal strPath As String)
'Objekt zuweisung
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(strPath)
'Schlaufe zur Ordner Indexierung
For Each objsubfolder In objFolder.subfolders
strPath = objsubfolder.Path
'Schlaufen einleitung
If objFSO.FolderExists(strPath) Then
'If CDate(dDatumLastmodified) < CDate(dDatumNow) Then
If DateDiff("d", objsubfolder.datelastmodified, Date) >= intAelterals Then
If chkAnOrdner(0).Value = 1 Then
'If Überprüfung - Auschschliessung der Obersten Verzeichnisse
If LCase(Mid(objsubfolder.Name, 1, 3)) <> "an_" Then
End If
End If
Else
If chk_samOrdner(1).Value = 1 Then
If LCase(Mid(objsubfolder.Name, 1, 4)) <> "_sam" Then
MsgBox ("SAM ORDNER")
Else
End If
End If
'Counter für die Schlaufe
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
lonZeileZaehler = lonZeileZaehler + 1
'Eintrag der Attribute für die Ordner in die Tabelle
MSFlexGrid1.TextMatrix(lonZeileZaehler, 1) = objsubfolder.Name
MSFlexGrid1.TextMatrix(lonZeileZaehler, 2) = objsubfolder.datelastmodified
MSFlexGrid1.TextMatrix(lonZeileZaehler, 3) = objsubfolder.DateCreated
MSFlexGrid1.TextMatrix(lonZeileZaehler, 4) = objsubfolder.Size
MSFlexGrid1.TextMatrix(lonZeileZaehler, 5) = objsubfolder.Path
'Refresh der Anzeige, damit der User nicht denkt das Programm funktioniert nicht
MSFlexGrid1.Refresh
'End If
'End If
End If
'Schlaufe zur Datei Indexierung
For Each objdatei In objFolder.Files
'Wenn der Datumsunterschied grösser als (Anzahl = Variable) Tage ist, dann
If DateDiff("d", objsubfolder.datelastmodified, Date) >= intAelterals Then
'Counter für die Schlaufe
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
lonZeileZaehler = lonZeileZaehler + 1
'Eintrag der Attribute für die Dateien in die Tabelle
MSFlexGrid1.TextMatrix(lonZeileZaehler, 1) = objdatei.Name
MSFlexGrid1.TextMatrix(lonZeileZaehler, 2) = objdatei.datelastmodified
MSFlexGrid1.TextMatrix(lonZeileZaehler, 3) = objdatei.DateCreated
MSFlexGrid1.TextMatrix(lonZeileZaehler, 4) = objdatei.Size
MSFlexGrid1.TextMatrix(lonZeileZaehler, 5) = objdatei.Path
'Refresh der Anzeige, damit der User nicht denkt das Programm funktioniert nicht
MSFlexGrid1.Refresh
Else
End If
Next
'Rekursiver Aufruf
pSubScan (strPath)
End If
Next
End Sub
Versteht ihr was ich meine? i hope it