Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1628to1632
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

Per VBA Tablenne abgleichen und Ausgeben

Per VBA Tablenne abgleichen und Ausgeben
13.06.2018 13:29:34
Domme
Hallo liebes Forum,
ich habe folgendes Problem:
Ich habe eine Excel mit drei Tabellenblättern.
Bei einem Klick auf einen Button soll anschließend per Makro die Tabelle1 mit der Tabelle 2 abgeglichen werden, die Tabellen Anhand der "FallNr" suchen und nur die übereinstimmenden Ergebnisse anhand der FallNr auf einem dritten Tabellenblatt ausgegeben werden.
Leider kopiert meine Excel aber einfach die Komplette Liste aus dem 1. Tabellenblatt in das dritte und sucht nicht nur die Daten Anhand der FallNr aus dem Tabellenblatt Patientenliste.
SVerweis kommt leider nicht in Frage, da dieser ja keine Tabelle ohne Leerzeilen erstellen kann.
Ich habe es einmal angehängt und hoffe, dass Ihr alle versteht was ich meine:
https://www.herber.de/bbs/user/122091.xlsm
LG
Domme

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Per VBA Tablenne abgleichen und Ausgeben
13.06.2018 14:20:45
Torsten
Hallo Domme,
versuch mal das hier.

Sub Ausgabeliste()
Dim WS1 As Worksheet: Set WS1 = Worksheets("Laborliste")
Dim WS2 As Worksheet: Set WS2 = Worksheets("Patientenliste")
Dim WS3 As Worksheet: Set WS3 = Worksheets("Ausgabeliste")
Dim lngRow As Long
Application.ScreenUpdating = False
For lngRow = 2 To WS1.Cells(Rows.Count, 6).End(xlUp).Row + 1
If WorksheetFunction.CountIfs(WS2.Columns(1), WS1.Cells(lngRow, 4)) = 1 Then
WS1.Range("D" & lngRow & ":L" & lngRow).Copy WS3.Range _
("A" & WorksheetFunction.CountA(WS2.Columns(5)) + 1)
End If
Next lngRow
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Per VBA Tablenne abgleichen und Ausgeben
13.06.2018 15:07:04
Torsten
Sorry, kleiner Fehler
WS1.Range("D" & lngRow & ":L" & lngRow).Copy WS3.Range _
("A" & WorksheetFunction.CountA(WS3.Columns(5)) + 1)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige