Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Aus Matrix Spalten auslesen, die best. Wert haben

Aus Matrix Spalten auslesen, die best. Wert haben
25.09.2019 17:10:30
Heike
Hallo,
ich suche nach einer Lösung für ein spezielles Problem mit einer Kreuztabelle / Matrix
Die Matrix sieht exemplarisch so aus
Mitarbeiter | Ananas | Käse | Paprika | Tomaten | Chilli | Mais ...
Hugo         | X          |         |X          |              |         | X
Isolde        |             | X      |X          | X           |         |
Rosie         |             |         |            |              | X      |
.
.
.
Ich möchte nun ausgeben (idealerweise in einer Zelle getrennt durch ";") den Namen in der ersten Spalte einer Zeile und alle Spaltennamen, bei denen in der jeweiligen Zeile ein "X" steht, also so:
Hugo; Ananas; Paprika; Mais
Isolde; Käse; Paprika; Tomaten
Rosie; Chilli
Ich habe schon mit Index, Vergleich und Aggregat herumgespielt aber immer noch nicht die richtige Lösung gefunden. Bisher hatte ich immer die erste Spalte und den Spaltennamen des ersten/letzten "X", aber nicht aller anderen.
Mein erster Ansatz mit PowerQuery hat mir auch nicht weitergeholfen, allerdings bin ich in PowerQuery noch ganz schlecht.
Mein nächster Ansatz wäre nun mittels VBA ein Array zu befüllen (hab aber mit der Programmierung noch nicht begonnen).
Vielleicht hat ja einer von euch die zündende Idee (egal welcher Weg) für mich.
Dankeschön!

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

Betreff
Datum
Anwender
Anzeige
AW: Aus Matrix Spalten auslesen, die best. Wert haben
25.09.2019 17:50:43
Dieter
Hallo Heike,
ich mache das gern mit VBA.
Sub Zusammenfassen()
Dim letzteSpalte As Long
Dim letzteZeile As Long
Dim spalte As Long
Dim wb As Workbook
Dim wsE As Worksheet
Dim wsU As Worksheet
Dim zeile As Long
Dim zf As String
Set wb = ThisWorkbook
Set wsE = wb.Worksheets("Ergebnis")
wsE.UsedRange.ClearContents
Set wsU = wb.Worksheets("Ursprung")
letzteSpalte = wsU.Cells(1, wsU.Columns.Count).End(xlToLeft).Column
letzteZeile = wsU.Cells(wsU.Rows.Count, "A").End(xlUp).Row
For zeile = 2 To letzteZeile
zf = wsU.Cells(zeile, "A")
For spalte = 2 To letzteSpalte
If wsU.Cells(zeile, spalte) = "X" Then
zf = zf & "; " & wsU.Cells(1, spalte)
End If
Next spalte
wsE.Cells(zeile, "A") = zf
Next zeile
End Sub
https://www.herber.de/bbs/user/132209.xlsm
Viele Grüße
Dieter
Anzeige
AW: Aus Matrix Spalten auslesen, die best. Wert haben
25.09.2019 17:53:02
Dieter
Hallo Heike,
ich mache das gern mit VBA.
Sub Zusammenfassen()
Dim letzteSpalte As Long
Dim letzteZeile As Long
Dim spalte As Long
Dim wb As Workbook
Dim wsE As Worksheet
Dim wsU As Worksheet
Dim zeile As Long
Dim zf As String
Set wb = ThisWorkbook
Set wsE = wb.Worksheets("Ergebnis")
wsE.UsedRange.ClearContents
Set wsU = wb.Worksheets("Ursprung")
letzteSpalte = wsU.Cells(1, wsU.Columns.Count).End(xlToLeft).Column
letzteZeile = wsU.Cells(wsU.Rows.Count, "A").End(xlUp).Row
For zeile = 2 To letzteZeile
zf = wsU.Cells(zeile, "A")
For spalte = 2 To letzteSpalte
If wsU.Cells(zeile, spalte) = "X" Then
zf = zf & "; " & wsU.Cells(1, spalte)
End If
Next spalte
wsE.Cells(zeile, "A") = zf
Next zeile
End Sub
https://www.herber.de/bbs/user/132209.xlsm
Viele Grüße
Dieter
Anzeige
AW: Aus Matrix Spalten auslesen, die best. Wert haben
26.09.2019 21:29:39
Heike
Danke, klappt wunderbar!

303 Forumthreads zu ähnlichen Themen


Hallo Profis,
ich suche einen VBA-Befehl für folgendes:
Ich habe einen Ordner mit vielen xls-Dateien. Diese sollen nun alle in einer Datei zusammengefahren werden, alle Zeilen, wenn der Wert der 2. Spalte links mit "12345" anfängt.
Geht dies?
Vielen Dank vorab.
Daniel
...
Anzeige

Hallo,
bräuchte eure Hilfe bitte.
Aus einem Tabellenblatt ("FEHLZEITEN") sollen Daten ausgelesen und in einem anderen Tabellenblatt ("EINSATZPLANUNG") ab Zeile 100 eingefügt und bei Änderungen in "FEHLZEITEN" aktualisiert werden.
Habe da mal eine Beispieldatei zur besseren Veransch...

Hallo Leute,
ich möchte mit VBA aus dem Blatt2 ganze Datenzeilen auslesen, wenn diese in der Spalte3 den Wert enthalten, den ich in Blatt3 in Zelle F6 vorgebe. Die Datenzeilen sollen dann in Blatt3 ab Zeile14 eingefügt werden.
Nach etlichen Selbstversuchen gebe ich jetzt auf.
Gruss...
Anzeige

Hallo,
wie kann ich aus einer Matrix, die in einer separaten Arbeitsmappe (im Beispiel der Bereich Arbeitsmappe "B") liegt, den entsprechenden EUR Betrag auslesen, wenn in der Spalte "C" untereinander in den einzelnen Zeilen die Bemessungsgrösse 1 steht (in diesem Fall qm) und in den Spalt...

Hallo liebe Excel-Könner,
ich habe folgendes Problem und finde keine Lösung.
Ich habe in Spalte A von 2006 bis heute Datum stehen, über eine UserForm möche ich in zwei TextBoxen von bis Datum eintragen und in Spalte B in diesem Bereich den WertX.
Ich hoffe Ihr könnt mir helfen!
...

Hallo Excel-Freunde,
ich glaub ich werde verrückt.
Meine ComboBox füllt sich nicht mehr. Ich versuche den Code so zu ändern, dass die Quelle für die ComboBox wo anders stehen kann. Im folgenden Code müssen die Werte in der Spalte A der Tabelle1 stehen.
Private Sub Worksheet_Change...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige