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

Schleife in einer Schleife

Schleife in einer Schleife
15.03.2015 23:37:16
N.
Hallo,
ich würde gerne eine VBA programmieren, da ich das jedoch noch nie gemacht habe und auch nicht weis wie man bestimmte Sachen definiert, hoffe ich, dass ihr mir helfen könnt. Ich habe schon versucht über verschiedene Beiträge aus diesem Forum meine VBA Programmierung hinzukriegen aber leider funktioniert das nicht so ganz. Hier meine Problemstellung.
Die Datei ist in ihren Aufbau stets gleich. In der Spalte A befindet sich eine Codierung nach einem bestimmten Muster, um Daten eine einzigartige Adresse zu geben, hier in dem Fall für Mitglieder in der ersten Tabelle, oder Erfassung von den Sportmaterialien in der zweiten Tabelle. Das Muster der Codierung besteht aus 7 Ziffern die wie folgt aussieht ###.##.##
Ich möchte gerne, dass aus allen Tabellen die Spalte A in die Spalte A der Tabelle 1 aufgelistet wird. Und das in Tabelle 1 in die Spalte B der Tabellen Name neben der aufgelisteten Codierung erscheint. Als zweiten Schritt den ich schon über eine Makroaufnahme hingekriegt habe möchte ich dann alle Leerzellen löschen. Als dritten Schritt, da mich nur die Auflistung der Codierung interessiert, möchte ich alles was nicht der Codierung entspricht, also Text, ebenfalls löschen. Das habe ich noch nicht hingekriegt. Evtl könnte man Schritt 2 und 3 in einen zusammenfassen. der Tabellenname befindet sich immer in der Zelle E2.
Sinn und Zweck des ganzen ist, dass bei uns im Verein in der Vergangenheit Materialien abhanden gekommen sind. Grund dafür ist, dass die Räume auch von anderen Vereinen verwendet werden. Auch soll eine bessere Erfassung der Mitglieder erfolgen. Diese Auflistung soll mir einen schnellen Überblick verschaffen.
Da in Zukunft noch einige Tabellenblätter hinzukommen könnten, hätte ich das Ganze gerne in einer Schleife gepackt, da wenn ich das alles in einzelne Makros packen würde ich eine Riesenliste an Makros haben. Was ich aus den ganzen anderen Beiträgen herauslesen konnte, ist dass für die zwei Schritte es zwei schleifen geben muss. Die erste, die in alle Tabellenblätter geht und die zweite, die alle Zellen der jeweiligen Tabelle in die Spalte A kopiert.
In der Beispiel Datei habe ich es aufgezeigt wie ich mir das Vorgestellt habe. Ich hoffe ihr könnt mir helfen.
Grüße N.
https://www.herber.de/bbs/user/96384.xlsx

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife in einer Schleife
16.03.2015 12:52:49
MCO
Hallo N.
Ich habe deinen Ansatz mal in Code gebannt :-)
Sub Datensammler()
Sheets(1).Range("A:B").Clear
For sh = 2 To Sheets.Count 'alle sheets von 2-x
Set Rng = Sheets(sh).Range("A:A").SpecialCells(xlCellTypeConstants) 'Konstanten suchen
For Each cl In Rng 'nimm jeden einzelnen konstanten Wert
lz = Sheets(1).Cells(Rows.Count, "A").End(xlUp).Row + 1 'freie zeile suchen
If IsNumeric(Replace(cl, ".", "")) Then 'wenn ohne punkte numerisch dann
Sheets(1).Cells(lz, "A") = cl 'Wert komplett eintragen
Sheets(1).Cells(lz, "B") = Sheets(sh).Range("E2") 'Herkunft eintragen
End If
Next cl
Next sh
Set Rng = Nothing
End Sub
Viel Erfolg noch!
Gruß, MCO
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige