Tipp 3.5 - Berichte in Array

Wie kann ich einem Array die Namen aller Berichte der aktuellen Datenbank übergeben?

Mit dieser Funktion können Sie einem Array die Namen aller Berichte der aktuellen Datenbank übergeben. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.

Beispiel:

Public Function A2XRptNamesToArray(pasIn() As String) As Integer
  '// =====================================================
  '// Methode   | Übergibt einem Array die Namen aller
  '//           | Berichte der aktuellen DB
  '// -----------------------------------------------------
  '// Parameter | pasIn()  - Array zum Füllen
  '// -----------------------------------------------------
  '// Rückgabe  | Integer -  Anzahl Berichte
  '// -----------------------------------------------------
  '// Erstellt  | Manuela Kulpa
  '//           | EDV Innovation & Consulting - Dormagen
  '// -----------------------------------------------------
  '// Beispielaufruf:
  '// Dim iCount    As Integer
  '// Dim iCounter  As Integer
  '// Dim asReports() As String
  '//
  '// iCount = A2XRptNamesToArray(asReports)
  '//   Debug.Print "Berichte:"
  '// For iCounter = 0 To iCount - 1
  '//   Debug.Print iCounter & ": " & _
  '//               asReports(iCounter)
  '// Next iCounter
  '// =====================================================
 
  ' Verweis auf DAO 3.6 Object Library muss gesetzt sein!
  Dim dbs As DAO.Database
  Dim con As DAO.Container
  Dim doc As DAO.Document
  Dim intCounter As Integer
  Dim iCount As Integer
  Dim sName As String
 
  On Error GoTo A2XRptNamesToArray_Error
 
  Set dbs = CurrentDb()
 
  Set con = dbs.Containers("Reports")
  iCount = con.Documents.Count
  ReDim pasIn(0 To iCount - 1)
 
  For Each doc In con.Documents
    sName = doc.Name
    pasIn(intCounter) = sName
    intCounter = intCounter + 1
  Next doc
 
  A2XRptNamesToArray = iCount
 
A2XRptNamesToArray_Exit:
  On Error GoTo 0
  Exit Function
 
A2XRptNamesToArray_Error:
  Select Case Err.Number
  Case Else
    MsgBox "Fehler " & Err.Number & ": " & _
           Err.Description, vbCritical, _
           "modRpt.A2XRptNamesToArray"
  End Select
  Resume A2XRptNamesToArray_Exit
 
 
End Function