weiß nicht, ob ich dich richtig verstehe und hoffe ich drücke mich einigermaßen verständlich aus:
Dies ist der Ansatz eines zu Fuß-Vorschlags.
Das mit der Auswahl an Dokumenten hab ich nicht drin. Geht glaub ich über NotesDatabase.Unprocessed Documents.
Die Idee ist, daß du vor dem kopieren in die andere Datenbank "aufzeichnest" welche Dokumente in welchen Foldern liegen.
Dafür iterierst du über alle Folder und darin über alle Dokumente. Du speicherst dann den Foldernamen und die UniversalID des Dokuments in einer Datenstruktur. Beide Werte sind einfach durch ein # getrennt.
Diese Wertepaare kommen alle in einen dynamischen Array dataDocsAndFolders().
Nach dem kopieren kannst du dann möglicherweise mit diesen aufgezeichneten Daten die alte Struktur wieder herstelln ???
nur sone Idee.
Sub Initialize
Dim sessionThis As New NotesSession
Dim dbThis As NotesDatabase
Dim varAllViews As Variant
Dim dataDocsAndFolders () As String
Dim indexArray As Integer
Dim strDocsAndFoldersItem As String
indexArray = -1
Set dbThis = sessionThis.currentDatabase
varAllViews = dbThis.Views
Forall x In varAllViews
If x.isFolder Then
Set doc = x.getFirstDocument
Do Until doc Is Nothing
indexArray = indexArray + 1
Redim Preserve dataDocsAndFolders(indexArray) As String
strDocsAndFoldersItem = x.Name + "#" + doc.UniversalID
dataDocsAndFolders(indexArray) = strDocsAndFoldersItem
Set doc = x.getNextDocument(doc)
Loop
End If
End Forall
Forall y In dataDocsAndFolders
Msgbox y
End Forall
End Sub