Moin,
Ich habe mir, als totaler Anfänger, ein Makro gebastelt / zusammenkopiert, dass alle meine Outlook Ordner und Unterordner durchsucht, und mir dann den entsprechenden Ordner öffnet. Gesucht wird nach einer 5 stelligen Projektnummer im Ordnernamen.
Das funktioniert auch erstmal prima. Jedoch ist Ordnerstruktur enorm groß, was zu langen Wartezeiten, bzw. bei falschen Projektnummern zu Endlossuchen führt.
Nun also meine Frage: Kann ich als Startverzeichnis einen Unterordner wählen. Falls ja, wie?
Der zu durchsuchende Ordner ist ein Öffentlicher Unterordner,irgendwo auf der 6ten Ebene.
Private Zielordner As Outlook.MAPIFolder
Private Suchausdruck As String
Public Sub HVK_Ordnersuche()
Dim Projektnummer As String
Dim AnzahlZiffern As Integer
Dim alleOrdner As Outlook.Folders
Dim HVK As Outlook.Folder
Set Zielordner = Nothing
Projektnummer = ""
Projektnummer = InputBox("Projektnummer eingeben: ", "")
Projektnummer = Trim(Projektnummer) & "*"
AnzahlZiffern = Len(Projektnummer)
Suchausdruck = ""
Suchausdruck = Projektnummer '---------------------------
If AnzahlZiffern <> 6 Then
MsgBox "ungültige Projektnummer", vbInformation
End
Else
Set alleOrdner = Application.Session.Folders
Suchdurchlauf alleOrdner
If Not Zielordner Is Nothing Then
Set Application.ActiveExplorer.CurrentFolder = Zielordner
Else
MsgBox "Projektordner nicht gefunden", vbInformation
End If
End If
End Sub
Private Sub Suchdurchlauf(alleOrdner As Outlook.Folders)
Dim Unterordner As Outlook.MAPIFolder
Dim Treffer As Boolean
For Each Unterordner In alleOrdner
Treffer = (Unterordner.Name Like Suchausdruck)
If Treffer Then
Set Zielordner = Unterordner
Exit For
Else
Suchdurchlauf Unterordner.Folders
If Not Zielordner Is Nothing Then Exit For
End If
Next
End Sub
Vielen Dank, und schönes Wochenende,
Christoph
|