Microsoft Excel

Herbers Excel/VBA-Archiv

Excel2016: Zeilen in Spalten per VBA


Betrifft: Excel2016: Zeilen in Spalten per VBA von: Patrick
Geschrieben am: 26.05.2017 16:10:08

Hallo liebes Forum,

erst einmal ein großes Lob an die ganze Commmunity hier: Ich bin jetzt kein großes Excel-Genie, aber hier findet man immer gute Ideen und gute Lösungen. Herzlichen Dank mal vorab an alle hier!

Mein Problem:
Ich möchte Worte in den Zeilen einer Tabelle suchen/finden und - im Falle eines Suchtreffers, Teile dieser Zeile in eine andere Tabelle als Spalte kopieren.
Dann soll in der ursprünglichen Tabelle weitergesucht werden und etwaige gefundene, weitere Zeilen wieder an die Spalte der anderen Tabelle angehängt werden.

Beispieltabelle

Tabelle1:
id|Titel|Tags|

1001|Marketingassistent Internet Media|Marketing, Marketingassistenz, Marketingassistent, Marketingassistentin, Assistenz|
1002|Finanzbuchhalter Lebensmittelbranche|Controlling, Finanzwesen, Buchhaltung, Buchhalter, Bilanzbuchhalter, Rechnungswesen|
1003|Consultant Rechnungswesen Personalabrechnung|Controlling, Finanzwesen, Buchhaltung, Buchhalter, Bilanzbuchhalter, Rechnungswesen, Strukturbilanz, Akkumulation, Bilanzanalyse|

In der Tabelle1 kann die Anzahl der Worte in der Spalte "Tags" (komma-separiert) durchaus 30-50 Worte enthalten.

gesucht werden soll jetzt bspw. nach dem Suchwort "Buchhalter", welches in meinem Beispiel in der Zeile 2 und Zeile 3 vorkommt.

Ergebnis in Tabelle3:
Spalte A:

Finanzbuchhalter/in
Lebensmittelbranche

Controlling,
Finanzwesen,
Buchhaltung,
Buchhalter,
Bilanzbuchhalter,
Rechnungswesen
Consultant
Rechnungswesen
Personalabrechnung

Controlling,
Finanzwesen,
uchhaltung,
Buchhalter,
Bilanzbuchhalter,
Rechnungswesen,
Strukturbilanz,
Akkumulation,
Bilanzanalyse

Das Script soll also bspw. in Zeile 2 der Tabelle1 das Wort "Buchhalter" finden und dann - bis auf die ID - die Zeilenwerte in einer anderen Tabelle3 in eine Spalte schreiben. Die Anzahl der geschriebenen Zeilen in dieser Tabelle3 müsste es sich merken und in der Tabelle1 weitersuchen, ob es noch mehr Zeilen gibt, in denen das Wort "Buchhalter" vorkommt.
Falls ja:
Dann kopiere auch die entsprechenden Zellwerte ans Ende der schon erstellten Spalte in Tabelle3.

Kann mir jemand helfen?
Gerne auch schritt für Schritt erklären, damit ich mehr von VBA lerne.

LG

Patrick

  

Betrifft: Beispielmappe und Rückfrage von: Werner
Geschrieben am: 26.05.2017 16:20:05

Hallo Patrick,

warum stelltst du hier nicht eine kleine Mustertabelle ein, mit ein paar Spieldaten. Die Datei sollte in ihrer Struktur deinem Original entsprechen.
Ich glaube nicht, dass viele hier die Lust verspüren die Datei nach zu bauen.

Dann noch eine Frage: Suche nach "Buchhalter" wäre dann "Finanzbuchhalter" auch ein Treffer?

Gruß Werner


  

Betrifft: AW: Beispielmappe und Rückfrage von: Patrick Gilles
Geschrieben am: 26.05.2017 16:38:44

Hallo Werner,

gute Idee.. Sorry.
Habe sie angehängt:
https://www.herber.de/bbs/user/113807.xlsx


Ich habe schon ein paar Experimente hinter mir, daher habe ich die Tag-Wolke (komme-separiert) schon einmal zeilenweise aufgeteilt in Tag1, Tag2, usw., weil ich dachte, dass ich so weiterkäme. In der Excel-Datei habe ich die aufgeteilte Tag-Wolke blau eingefärbt (der Inhalt der Zellen x bis n ist identisch mit der Spalte C "Tags", nur eben jedes Wort aufgeteilt in eine eigene Zelle).
Leider reichen meine VBA-Kenntnisse auch dazu nicht aus.

LG
Patrick

Und Danke schon mal...


  

Betrifft: AW: Beispielmappe und Rückfrage von: Werner
Geschrieben am: 26.05.2017 17:02:33

Hallo Patrick,

den Suchbegriff zu suchen und zu finden, dürfte eher kein Problem sein. Bei Fund könnte man deine TAGS mittels Text in Spalten, mit Trennzeichen Komma, aufteilen. Das dann kopieren und mittelns Transpose in eine Spalte.
So weit so gut.

Wo ich, zumindest für mich, Probleme sehe ist deine Spalte Title. Muss das zwingend auch aufgeteilt werden? Da sehe ich nämlich die Problematik wann soll ein Begriff in eine andere Zeile und wann nicht?

Und meine Frage im vorherigen Beitrag hast du nicht beantwortet.

Also nochmal folgende Fragen:

-bei Suchbegriff "Buchhalter" ist dann "Finanzbuchhalter" auch ein Suchtreffer?
-können die Werte in Spalte Title unverändert in einer Zeile bleiben?

Gruß Werner


  

Betrifft: AW: Beispielmappe und Rückfrage von: Patrick Gilles
Geschrieben am: 26.05.2017 17:19:02

Hallo Werner,

vielleicht mal kurz mein eigentliches Ziel:
Die spaltenweise Darstellung der gefundenen Zeilen wird lediglich eine Hilftabelle sein, von der aus ich dann weiteroperieren kann. Am Ende soll so Liste rauskommen, welche Tags am häufigsten zu einem bestimmten Suchbegriff verwendet wurden. Sobald die Hilfstabelle mal steht, weiß ich wieder alleine weiter (hoffe ich). Mir gelingt nur dieser "Hilfsschritt" nicht...

-bei Suchbegriff "Buchhalter" ist dann "Finanzbuchhalter" auch ein Suchtreffer?
ja.

-können die Werte in Spalte Title unverändert in einer Zeile bleiben?
Falls das zu umständlich ist, immer die verschiedenen "Leerzeichenpositionen" zu suchen, um ein Wort zu erkennen, dann wäre es fast besser eine separate Spalte mit den 'Title'-Werten zu befüllen.

Ich denke, wenn ich mal den Code für die 'Tags' sehe, dann kann ich damit eine separate Hilfstabelle für den 'Title' basteln.
Daher:
Lass das mit dem Tile einfach erst einmal weg.

Patrick


  

Betrifft: AW: Excel2016: Zeilen in Spalten per VBA von: onur
Geschrieben am: 27.05.2017 01:25:27

https://www.herber.de/bbs/user/113818.xlsm


  

Betrifft: AW: Excel2016: Zeilen in Spalten per VBA von: Patrick Gillles
Geschrieben am: 29.05.2017 18:01:32

Wow.. diese paar Zeilen sind alles?
Genial.

Herzlichen Dank.
Ich übertrage das jetzt gleich mal auf dem Master mit 33.000 Zeilen ... bin schon mächtig gespannt.

Herzlichen Dank.

Patrick


  

Betrifft: AW: Excel2016: Zeilen in Spalten per VBA von: onur
Geschrieben am: 29.05.2017 18:33:53

Und du brauchst nicht einmal auf Groß/Kleinschreibung achten.


Beiträge aus den Excel-Beispielen zum Thema "Excel2016: Zeilen in Spalten per VBA"