Anzeige
Archiv - Navigation
1632to1636
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Den inhalt mehrer Zellen automatisch als Variabeln

Den inhalt mehrer Zellen automatisch als Variabeln
10.07.2018 18:49:28
Andy
Moin Moin
Bin neu hier und auch ein VBA Frischling.
Habe mehre Tabellenblätter.
Das Tabellenblatt "Database" dient als Quelle.
In dem Tabellenblatt "Criteria",
in der Spalte "B" stehen die Suchkriterien nach dem in der Spalte "F" des Tabellenbattes "Database" gesucht wird .
Sowie in der Spalte A der Name des Ziel Tabellenblattes.
Wenn also der Suchbegriff aus Spalte "B"-"Criteria" in der Spalte "F"-"Database" steht wird die ganze Zeile in das Tabellenblatt mit dem Namen der in "A"-"Criteria" steht Kopiert.
Das Klappt bis jetzt.
Hier der code :

Sub Daten_in_Unterdatenbanken_kopieren()
Dim variable As String
variable_1 = Worksheets("Criteria").Range("A3").Value
variable_2 = Worksheets("Criteria").Range("B3").Value
With Sheets("Database").UsedRange
.AutoFilter Field:=6, Criteria1:=variable_2
.Offset(1, 0).SpecialCells(xlCellTypeVisible).Copy
End With
Sheets(variable_1).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Sheets("Database").UsedRange.AutoFilter
End Sub

Jetzt zu meinem Problem:
Mein Tabellenblatt"Criteria" hat natürlich nicht nur in "A3"-"B3" Suchkriterien stehen sondern in "A3-Ax"- "B3-B3x".
Natürlich kann ich alle Zeilen händisch als Variabeln eintragen aber das ist viel
zu fehler anfällig und zeit auf wendig.

Das ist bestimmt total simpel aber ich komme einfach nicht drauf.
Bitte helft mir

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Den inhalt mehrer Zellen automatisch als Variabeln
10.07.2018 19:18:27
Nepumuk
Hallo Andy,
teste mal:
Option Explicit

Public Sub Daten_in_Unterdatenbanken_kopieren()
    
    Dim avntValues As Variant
    Dim ialngIndex As Long
    
    With Worksheets("Criteria")
        avntValues = .Range(.Cells(3, 1), .Cells(.Rows.Count, 2).End(xlUp)).Value2
    End With
    
    For ialngIndex = LBound(avntValues, 1) To UBound(avntValues, 1)
        
        With Worksheets("Database").UsedRange
            .AutoFilter Field:=6, Criteria1:=avntValues(ialngIndex, 1)
            .Offset(1, 0).SpecialCells(xlCellTypeVisible).Copy
        End With
        
        Worksheets(avntValues(ialngIndex, 2)).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
        
    Next
    
    Worksheets("Database").ShowAllData
    
End Sub

Gruß
Nepumuk
Anzeige
AW: Den inhalt mehrer Zellen automatisch als Variabeln
10.07.2018 19:57:26
Andy
Moin Moin Nepumuk
Vielen Dank :-)
Habe es gerade ausprobiert , doch bei :
"Worksheets(avntValues(ialngIndex, 2)).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues"
bekomme ich die fehler meldung : Index auserhalb des gültigen bereichs
AW: Den inhalt mehrer Zellen automatisch als Variabeln
10.07.2018 20:17:01
Nepumuk
Hallo Andy,
dann hast du einen Tabellenblattnamen in deiner Liste in Spalte B zu dem es keine Tabelle gibt. Prüf das mal.
Gruß
Nepumuk

165 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige