Microsoft Excel

Herbers Excel/VBA-Archiv

bestimmte Zeilen aus Tabellen zusammenführen

Betrifft: bestimmte Zeilen aus Tabellen zusammenführen von: Stefan
Geschrieben am: 08.03.2013 08:55:55

Hallo, ich habe eine Datei mit 12 Tabellen (bezeichnet 01,02,03... 12). In jeder Tabelle finden sich die monatlichen Datensätze zu Aufträgen. Dort findet sich in der Spalte P jweils das Kürzel für das Lieferland eines Auftrages. Ich benötige nun in Tabelle 13 alle Auftragszeilen (komplett), die in P das Kürzel "UK" haben, angefangen in Tabelle "01".

Wie kann ich das denn am besten umsetzen?

Danke vorweg für die Hilfe und Grüße
Stefan

  

Betrifft: AW: bestimmte Zeilen aus Tabellen zusammenführen von: Daniel
Geschrieben am: 08.03.2013 09:26:36

Hi

mit folgendem Code im Modul des Zusammenfassungsblattes

Private Sub Worksheet_Activate()
Dim i As Long
Me.UsedRange.Offset(1, 0).Clear 'alles löschen außer Überschrift
Application.ScreenUpdating = False
For i = 1 To 4
    With Sheets(Format(i, "00")).Columns(16)
        .Replace "UK", True
        If WorksheetFunction.CountIf(.Cells, True) > 0 Then
            With .SpecialCells(xlCellTypeConstants, 4)
                .Value = "UK"
                .EntireRow.Copy Me.Cells(Me.Rows.Count, 1).End(xlUp).Offset(1, 0)
            End With
        End If
    End With
Next
End Sub

folgende Bedingungen müssen erfüllt sein:
- das UK muss als fester Wert in Spalte P stehen, keine Formel
- die Spalte A sollte keine Leerzellen enthalten, über sie wird beim Einfügen die nächste freie Zeile ermittelt
- in der Ersten Zeile des Zusammenfassungsblattes solltest du die Überschriften eintragen.

Gruß Daniel


  

Betrifft: AW: bestimmte Zeilen aus Tabellen zusammenführen von: Daniel
Geschrieben am: 08.03.2013 09:27:46

und in der For-Schleife musst du aus der 4 eine 12 machen, war nur zu Faul, um 12 Tabellenblätter zum Testen zu erstellen.
gruß Daniel


  

Betrifft: AW: bestimmte Zeilen aus Tabellen zusammenführen von: Stefan
Geschrieben am: 08.03.2013 09:50:01

Hi Daniel, erst einmal Danke an dieser Stelle. Steh aber grad auf dem Schlauch. Bisher kopierte ich diese Scrips immer in ein leeres Makro. Sobald ich aber speichere, findet sich dieses nicht mehr im Drop Down. Erst wenn ich das Private vor Sub raus nehme, dann sehe ich das Makro, aber es tut dann nicht. Motzt wegen des Me. aus Zeile drei rum.

Was mache ich denn falsch?

Grüße


  

Betrifft: AW: bestimmte Zeilen aus Tabellen zusammenführen von: Daniel
Geschrieben am: 08.03.2013 09:54:34

Hi

normalerweise sollte dieser Code automatisch ausgeführt werden, wenn du auf das entsprechende Blatt wechselest (natürlich nur, wenn du den Code mit unveränderter Kopfzeile ins Modul des Tabellenblatts kopiert hast und nicht in ein allgemeines Modul)

in der Auswahlliste der Makros werden nur Makros angezeigt, die in einem allgemeinen Modul stehen, Public sind und keine Parameter enthalten.
das liegt daran, daß Private-Makros nur durch das entsprechende Event oder von einem Makro im gleichen Modul aufgerufen werden können (das ist die bedeutung von Private).
Markos mit Parametern erscheinen ebenso nicht, weil du ja auf diese Weise keine Parameter übergeben kannst.

Gruß Daniel


  

Betrifft: AW: bestimmte Zeilen aus Tabellen zusammenführen von: Stefan
Geschrieben am: 08.03.2013 10:06:24

Hmm, dann mal ganz doof gefragt... wo trage ich das denn dann ein? " ins Modul des Tabellenblatts kopiert hast"

Also, wo finde ich das Modul?

Grüße und Dnake!


  

Betrifft: wo finde ich das Modul? von: Rudi Maintaire
Geschrieben am: 08.03.2013 10:11:48

Hallo,
im Projektexplorer Doppelklick auf die Tabelle.

Gruß
Rudi


  

Betrifft: AW: wo finde ich das Modul? von: Daniel
Geschrieben am: 08.03.2013 10:34:18

oder direkt aus der Exceltabelle, wenn du mit der Rechten Maustaste auf den Tabellenblattreiter klickst und dann "Code anzeigen" auswählst.

Gruß Daniel


  

Betrifft: AW: wo finde ich das Modul? von: Stefan
Geschrieben am: 08.03.2013 11:02:42

Gecheckt. Daaanke!


 

Beiträge aus den Excel-Beispielen zum Thema "bestimmte Zeilen aus Tabellen zusammenführen"