Hallo zusammen,
Ich probiere über eine Haupttabelle in der Datentabelle die Informationen auszuwerten.
In der Haupttabelle sind 4 Spalten mit mehreren Zeilen. Jede Zeile beinhaltet 4 Filtereinträge.
Über VBA werden die Filtereinträge ausgelesen und als Filter in der Datentabelle eingetragen.
die ersten 3 Filter funktionieren ohne Probleme.
Filter 4 funktioniert nicht wie es sein sollte: In der Haupttabelle in der Spalte 4 sind Beträge eingetragen. z.B 1,10, 2,20, 3,30
Leider werden die Beträge falsch übernommen. In der Variablen wird statt 1,10 nur 1,1 gespeichert und somit wird falsch gefiltert.
Hier mein Quelltext:
Dim intRow As Integer
For intRow = 2 To ZeilenHAUPT
Windows(Vorlage01).Activate
Dim Filter04 As String
Filter01 = Cells(intRow, 4).Value
Filter02 = Cells(intRow, 5).Value
Filter03 = Cells(intRow, 7).Value
Filter04 = Cells(intRow, 8).Value
Windows(Rohdatei02).Activate
Workbooks(Rohdatei02).Sheets("Tabelle1").Range("A1:J1").AutoFilter
Workbooks(Rohdatei02).Sheets("Tabelle1").Range("A1:j1").AutoFilter Field:=1, Criteria1:=Filter01
Workbooks(Rohdatei02).Sheets("Tabelle1").Range("A1:j1").AutoFilter Field:=2, Criteria1:=Filter02
Workbooks(Rohdatei02).Sheets("Tabelle1").Range("A1:j1").AutoFilter Field:=4, Criteria1:=Filter03
Workbooks(Rohdatei02).Sheets("Tabelle1").Range("A1:j1").AutoFilter Field:=5, Criteria1:=Filter04
Call Summebilden
Workbooks(Rohdatei02).Sheets("Tabelle1").Range("L1").Select
Selection.Copy
Windows(Vorlage01).Activate
Workbooks(Vorlage01).Sheets("Berechnung").Range("J" & intRow).Select
ActiveSheet.Range("J" & intRow).PasteSpecial xlValues
Next intRow
Also "Filter04" holt sich aus der Haupttabelle die Daten (z.B. 1,10) und fügt in den Autofilter als 1,1, also ohne die 0 am ende.
Ich habe in der Haupttabelle die Felder als TEXT formatiert, auch als Währung.
Was mache ich falsch?
Excel 2007
Microsoft visual Basic 6.5
Danke im Voraus
robib |