Anzeige

Aus mehreren Spalten mit Filter arbeiten


josef24

Erfahrenes Mitglied
#1
Einen schönen Tag wünsche ich. Sitze mal wieder an einem VBA Problem und komme nicht weiter. Habe meine Code- Versuch mal angehängt. Folgendes Problem hätte ich bitte gerne gelöst: Ich wähle mittels Inputbox die Zahl Spalte "N" aus, (das so bleiben). Dann sollen aus der Spalte "X" und der Spalte "Y" jeweils die Datensätze mit Textinhalten ebenfalls hinzugefügt werden. Also eine Variable in Spalte "N" und die Textfelder betreffend sind es dann feste Werte (Text). Anschließend wird das Ergebnis an Word übergeben.
Danke fürs Interesse und ggf. Lösungsvorschläge!
Gruß Josef

Code:
Private Sub CommandButton8_Click()
Dim appword As Object, wordDoku As Object, wordbereich As Object, gruppe As String
Dim pfad As String
Dim bereich As Range
'        Dim rngFilterRange As Range
'        Dim lngCriteriaCount As Long
'        Dim arrCriteria() As String
Set bereich = ThisWorkbook.Worksheets("Probfall").Cells(1, 1).CurrentRegion
Set appword = CreateObject("Word.Application")
appword.Visible = True
Set wordDoku = appword.Documents.Add
Set wordbereich = wordDoku.Paragraphs.last.Range

gruppe = Application.InputBox(Title:="Auswahl Tage gültig", Prompt:="Geben Sie die Anzahl Tage ein:", _
Default:="Hier eingeben", Type:=2)
bereich.AutoFilter Field:=8, Criteria1:=gruppe
bereich.Copy
    With wordDoku
 
#2
AH - Excel. Bitte immer dazuschreiben.
Leider verstehe ich nur Bahnhof von dem was du willst.
Ich sehe in deinem Code werde N noch X oder Y. Oder sind das die Spalten des Worksheets?
Du filterst in Spalte 8. Das ist aber nicht N sondern H. Aber H kommt in deinem Text nixht vor.

Gut, der User kann etwas eingeben. Wie komt ehr von dieser Zahl auf X und Y, was immer das auch sein soll? Und zu was sollen die Textinhalte hinzugefügt werden?

Und was ist die eigentliche Frage?
 

josef24

Erfahrenes Mitglied
#3
Hallo und Danke für das Interesse, muss mich entschuldigen, habe eine falsche Tabelle in EXCEL 2007 verwendet. Es ist so, die Tabelle heißt "Probfall". Dort gibt es die Spalte 8 die Zahlen beinhaltet (Filter über Inputbox) . Bis dahin ist noch alles richtig. Irrtümlich sollen nicht die Spalten X und Y gefiltert werden, sondern die Spalten (6 "F") und (7 "G"). Nur Spalten mit Textinhalten auswählen. Die Tabelle wird sobald der Filter entsprechend ausgewählt, an ein Word- Dokument übergeben. Hierbei gibt es bisher jedenfalls keine Probleme. Ich hoffe das trägt etwas zur Erklärung bei.
 

josef24

Erfahrenes Mitglied
#4
Noch eine Ergänzung.
Habe mal ein paar Versuche gestartet, erreiche aber nur, das ein Filter in einer Spalte ein Ergebnis bring. Ich wollte aber in 2 oder auch 3 Spalten gleichzeitig filtern. Eine wie ich vermute (oder funktion). Vielleicht kann mich hierbei jemand aktiv unterstützen? Danke und Gruß Josef


Code:
Private Sub CommandButton8_Click()
Dim appword As Object, wordDoku As Object, wordbereich As Object, gruppe As String
Dim pfad As String
Dim bereich As Range
Dim objRange As Range
Dim objsheet As Worksheet
Dim objworkbook As Workbook
' ThisWorkbook.Worksheets("Probfall").Activate
Set bereich = ThisWorkbook.Worksheets("Probfall").Cells(1, 1).CurrentRegion
Set appword = CreateObject("Word.Application")
appword.Visible = True
Set wordDoku = appword.Documents.Add
Set wordbereich = wordDoku.Paragraphs.last.Range
'            gruppe = Application.InputBox(Title:="Auswahl Tage gültig", Prompt:="Geben Sie die Anzahl Tage ein:", _
'            Default:="Hier eingeben", Type:=2)
'            bereich.AutoFilter Field:=8, Criteria1:=gruppe
' aktivesheet.UsedRange.AutoFilter                    '  ("F:F,G:G).select
ActiveSheet.UsedRange.AutoFilter 6, ">=*  "
ActiveSheet.UsedRange.AutoFilter 7, ">=*  "
'  AutoFilter Field:=8, Criteria1:=">=1" ' , Operator:=xlOr, Criteria2:="<=150 "
'  Range("F:G").AutoFilter Field:=6, Criteria1:=">=* ", Operator:=xlOr, Criteria2:=">=* "
 
Anzeige

Neue Beiträge

Anzeige