|  
                                             
	Hi Leute, 
	  
	ich habe vor einen Serienbrief, bei dem ich nur bestimmte Datensätze ausgewählt habe, nur diese bestimmten Datensätze als Datei zu speichern. Ich habe mir dazu folgendes Programm geschrieben: 
Public Sub einzelnSpeichern()
Dim PfadMahnung As String
Dim sPfad As String
Dim Datenfeld As String
sPfad = ActiveDocument.Path & "\Mahnungen\"
With ActiveDocument.MailMerge
.DataSource.ActiveRecord = 0
   
'Anwendung unsichtbar
Application.Visible = False
   
   'Schleifenbeginn
   Do
      .Destination = wdSendToNewDocument                                'Erzeugen eines neuen (separaten) Dokuments
      .SuppressBlankLines = True
      
      With .DataSource
              .FirstRecord = .ActiveRecord
              .LastRecord = .ActiveRecord
              PfadMahnung = sPfad & Format(Date, "YYYY-MM-DD ") & "Mahnung " & .DataFields("Garagenname").Value & ".pdf"         'Dokumentennamen vergeben ==> Benennung nach ausgewähltem Datenfeld der Seriendruckquelle
      End With
      
      .Execute Pause:=False                                             'Ausführungspause verhindern
      ActiveDocument.SaveAs FileName:=PfadMahnung, FileFormat:=wdFormatPDF   'Einzeldokument für entsprechenden Datensatz als PDF speichern
      ActiveDocument.Close False                                        'Dok nicht schließen
      If .DataSource.ActiveRecord < .DataSource.RecordCount Then        'Wenn der aktive DS kleiner als die Anzahl der DS ist
         .DataSource.ActiveRecord = wdNextRecord                        'dann springe zum nächsten Datensatz
      Else
         Exit Do                                                        'sonst Schleifenabbruch, da alle DS durchgearbeitet wurden
      End If
      
    Loop
    'Schleifenende
    
  'Shell "Explorer.exe  /select, D:\*.pdf", vbNormalFocus               'Geht nicht
    
End With
'Anwendung sichtbar
Application.Visible = True
End Sub
	  
	Dabei habe ich zwei Probleme. .DataSource.RecordCount gibt ja den letzten aller Datensätze an. Wenn aber der letzte Datensatz nicht ausgewählt ist, kommt er ja nie zu diesem, sodass das Programm dann mit einer Fehlermeldung abstürzt. Gibts denn einen ähnlichen Befehl wie .DataSource.RecordCount, der sich auf den letzten markierten Datensatz bezieht? 
	Über  
Shell "Explorer.exe  /select, D:\*.pdf", vbNormalFocus 
	würde ich gern alle PDF Dateien in dem Ordner markieren. So funktionierts nicht. Hat jemand ne Lösung? 
     |