Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spalte A filtern und neue Datein erstellen VBA

Spalte A filtern und neue Datein erstellen VBA
09.03.2017 17:54:35
Janik
Hallo zusammen,
Wie sieht meine Ursprungstabelle aus:
ich habe ein Tabellenblatt mit dem Namen "Consolidated" mit zahlreichen Informationen zu Kundennummern. Die Kundennummern sind in der Spalte A gelistet mit den entsprechenden Informationen in den Zeilen. In der Spalte A kommen gleiche Kundennummern oefter vor. Die Kundennummern warden in Spalte A gefiltert. Leider kann ich aus Datenschutzgruenden die Tabelle nicht hochladen, aber ich denke meine Beschreibung zeigt die Grundzuege solide auf.
Was ich haben moechte:
Fuer jede Kundennummer soll eine neue PDF-Datei erstellt warden. Diese PDF-Datei soll alle Kundennummerneintraege enthalten. Den Ablauf kann ich mir so vorstellen:
1. Waehlt 1. Kundennummer aus. Setzt Filter mit dieser Nummer.
2. Erstellt mit der neuen gefilterten Tabelle eine neue PDF-Datei. (Am besten mit dem Namen der Kundennumer)
3. Waelt naechste Kundennummer... usw.
Ich habe hier in dem Forum schon einen aehnlichen Beitrag gefunden, konnte ihn aber nicht anpassen, da ich kaum VBA Kenntnisse besitze. Vielleicht hilft der Beitrag:
https://www.herber.de/forum/archiv/1316to1320/1317504_Excel_Datei_filtern_und_pro_Eintrag_Datei_erstelle.html
Schonmal vielen Dank fuer Eure Muehen!
VG Janik

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalte A filtern und neue Datein erstellen VBA
09.03.2017 19:15:12
KlausF
Hallo Janik,
das ist eine angepasste Datei von Erlandsen Data Consulting (www.erlandsendata)
Kannst ja mal probieren:
https://www.herber.de/bbs/user/112070.xls
Gruß
Klaus
AW: Spalte A filtern und neue Datein erstellen VBA
09.03.2017 20:10:53
Janik
Hallo Klaus,
danke fuer deine Hilfe. Das ist das was ich wollte jedoch treten Fehler auf. Wenn ich die Liste von A-Z sortiere sind die letzten 9 Dateien ohne Inhalt bzw. es wird nur die Spaltenbeschriftung angezeigt.
Wenn ich von Z-A sortiere tritt das gleiche Problem mit den letzten 8 Dateien auf. Ich vermute einen Fehler im Code oder eien Unstimmigkeit. Hast du eine Idee an was das liegen koennte? Meiner Meinung nach liegt es nicht an der Tabelle, da der Fehler immer am Ende auftaucht egal wie die Tabelle sotiert ist.
Hier noch mal der VBA Code:
Option Explicit
Sub FilterAndPDF()
Dim ItemList As Variant
Dim i As Long
ActiveSheet.Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Name = "DataList" 'anpassen
Application.ScreenUpdating = False
If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False
FindUniqueItems ItemList, "DataList"
ActiveSheet.Range("DataList").AutoFilter
For i = 1 To UBound(ItemList)
ActiveSheet.Range("DataList").AutoFilter 1, ItemList(i)
Application.StatusBar = "PDF " & ItemList(i)
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & Application.PathSeparator & ItemList(i) & ".pdf", Quality:=xlQualityStandard _
, IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=False
Next i
Application.StatusBar = False
ActiveSheet.ShowAllData
End Sub
Private Sub FindUniqueItems(UniqueItems As Variant, FilterRange As String)
Dim TempList() As String, UniqueCount As Integer, cl As Range, i As Integer
Range(FilterRange).AdvancedFilter Action:=xlFilterInPlace, Unique:=True
UniqueCount = Range(FilterRange).SpecialCells(xlCellTypeVisible).Count
ReDim TempList(1 To UniqueCount - 1)
i = 0
For Each cl In Range(FilterRange).SpecialCells(xlCellTypeVisible)
i = i + 1
If i > 1 Then TempList(i - 1) = cl.Formula
Next cl
Set cl = Nothing
UniqueItems = TempList
End Sub

VG Janik
Anzeige
Range inkorrekt?
09.03.2017 20:59:23
KlausF
Hallo Janik,
habe das nur kurz unter der Windowsversion meiner Frau getestet und
da hat es wie ich meine korrekt funktioniert (ich selber habe einen Mac).
Ändert sich etwas, wenn Du die Range in der Zeile
... ("A1:A" & Cells(Rows.Count, 1) ... änderst auf
... ("A2:A" & Cells(Rows.Count, 1) ...
?
Gruß
Klaus
AW: Range inkorrekt?
09.03.2017 21:17:30
Janik
Es ist jetzt in allen PDF Dateien der Eintrag der 1. Kundennumnmer dabei. Ansonsten hat sich nichts geaendert.
Ich habe auch ein Windows-System und die Datei, die du mir gesendet hast hat bei mir auch ohne Probleme funktioniert.
Was ich vergessen habe zu sagen ist, dass zufaellig eine bestimmte Fehlermeldung ab und zu auftaucht. Bis zu 2 mal pro Durchlauf. Manchmal auch gar nicht. Erknne darin aber auch kein Muster, da es immer an verschiedenen Stellen haengen bleibt.
Fehlermeldung ist folgende:
Run-time error 1004:
Document not saved. The document may be open, or an error may have been encountered when saving.

Wenn dieser Fehler kommt, schaue ich immer bei welcher Datei er stehen gebleiben ist, gehe auf debug und lasse dann weiter laufen. Den Rest macht er dann wieder normal und die Datei ist auch normal abgespeichert. Beim debugging warden mir folgende Zeilen markiert:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ThisWorkbook.Path & Application.PathSeparator & ItemList(i) & ".pdf", Quality:=xlQualityStandard _
, IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish:=False

Hoffe du hast noch ein paar Ideen :D
Anzeige
AW: Range inkorrekt?
09.03.2017 21:18:17
Janik
Vergessen den Beitrag auf offen zu stellen...
da kann ich leider nicht weiter helfen
09.03.2017 22:02:11
KlausF
Hallo Janik,
da bin ich mit meinem Latein jetzt auch am Ende. Kann auch leider
im Moment nichts weiter testen wg Mac. Scheint aber wohl nur ein
"kleines" Problem zu sein. Vielleicht schaut mal ein Windows-User
über den Code. Ich stell mal auf offen ...
Gruß
Klaus
AW: Range inkorrekt?
10.03.2017 08:49:54
ChrisL
Hi Janik
Die Beispieldatei habe ich mit XL2007 und Windows getestet und funktioniert ohne Probleme. Bei dir scheinbar auch. Somit wäre eine Beispieldatei sinnvoll, mittels derer sich dein Fehler rekonstruieren lässt.
Was ich mir vorstellen könnte sind für Dateinamen ungültige Sonderzeichen in Spalte A. Vielleicht auch eine kurzfristige Netzwerkunterbrechung, falls die Dateien auf einen Server geschrieben werden.
cu
Chris
Anzeige
AW: Range inkorrekt?
10.03.2017 15:50:56
Janik
Hallo zusammen,
ich habe es heute morgen ohne Aenderungen nochmal probiert und alle Dateien warden richtig erstellt auch die letzten 7 bzw. 8. Vll habe ich beim Uebertragen des Codes einen Fehler gemacht. Das Auftreten der Fehlermeldung bleibt leider. Die Nummern in der Spalte A beginnen mit einem ' . Die Dateien werden in einem Ordner auf dem Desktop gespeichert. Trotz der Fehlermeldung, finde ich jedoch keinen Fehler in den Dateien. Ich sehe den Threat deshalb als beendet. Falls es nochmal zu Problemen kommt melde ich mich wieder.
Vielen Dank Klaus und Chris fuer eure Muehe und Hilfe!!! :)
VG Janik
Anzeige

331 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige