Datentabelle mit VBA Gruppieren

Hallo Experten-Community,

möchte als bislang ahnungsloser VBA-Laie folgende Schritte für eine Datentabelle durchführen:

Ziel: Tabelle mit Daten nach Ausprägungen von Daten in zwei Spalten hierarchisch naheinander gruppieren.

  1. Daten nach Kriterium 1 (Strg) gruppieren.
  2. Datenblock aus 1 innerhalb nach Kriterium 2 (Strg) gruppieren.
  3. Zwischen den einzelnen Kriterium Zeilen einfügen und Datensätze neu geordnet darstellen.

Habe keine Ahnung wie. Vielen Dank für eure Unterstützung.

Gruss

Conti

Ziel: Tabelle mit Daten nach Ausprägungen von Daten in zwei
Spalten hierarchisch naheinander gruppieren.

Hallo Conti,

wo soll das geschehen?
An der gleichen Stelle wo deine tabelle steht (d.h. die alten Daten werden mit den neu geordneten Daten überschrieben?
Sollen die neugeordneten daten an andrer Stelle im gleichen Blatt erscheinen?
Auf einem anderen schon vorhandenen Blatt? Wo dort? Stehen da schon daten, sollen die erhalten bleiben?
Auf einem völlig neuen Blatt?

Mit Excelbordmitteln wie Gruppierung, Gliederung, Pivottabelle geht das nicht? Oder willst du das nicht?

Gruß
Reinhard

Hallo Reinhard,

Danke fuer deine Fragen auf meine wohl zu kurze Beschreibung.

  1. Umsetzung mit vba aufgrund Groesse geplant
  2. Umgliederung soll in Ausgangstabelle vorgenommen werden, wird also ueberschrieben
  3. Letztendlich Umgliederung von Zeilen

Gerne kannst du mir aber auch den Code angeben der Ergebnis in neue Mappe speichert

herzlichen dank, bg conti

Hallo Conti,

Danke fuer deine Fragen auf meine wohl zu kurze Beschreibung.

deine Beschreibung ist doch okay, kurz lang spielt da prinzipiell keine rolle, Hauptsache verständlich.
Ich weiß also was du möchtest (ist bei anderen längeren Anfragen nicht immer gegeben *gg*) und fragte nur nach wie du dir die Umsetzung
so vorstellst, da ich da zig Varianten kenne.

  1. Umsetzung mit vba aufgrund Groesse geplant

? Groesse? Ich kenn mich da mit Pivot tabellen nicht aus aber ich gehe davon aus daß sofern sie das machen können was du möchtest, viel schneller sind als Vba und sie auch mit „Groesse“ wenn du damit zeilenanzahl meinst gut klarkommen.

  1. Umgliederung soll in Ausgangstabelle vorgenommen werden,
    wird also ueberschrieben

Okay, Code kriegste morgen.

Gerne kannst du mir aber auch den Code angeben der Ergebnis in
neue Mappe speichert

Kein Thema, klär mit dir ab ob du neue mappe willst oder neues Blatt.

Gruß
Reinhard

Grüezi Conti

Ziel: Tabelle mit Daten nach Ausprägungen von Daten in zwei
Spalten hierarchisch naheinander gruppieren.

  1. Daten nach Kriterium 1 (Strg) gruppieren.
  2. Datenblock aus 1 innerhalb nach Kriterium 2 (Strg)
    gruppieren.
  3. Zwischen den einzelnen Kriterium Zeilen einfügen und
    Datensätze neu geordnet darstellen.

Wie Reinhard schon angedeutet hat, wäre hier wohl eine Pivot-Tabelle ein geeignetes Werkzeug - schnell, einfach und flexibel - und vor allem ganz ohne VBA-Programmierung :smile:).

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -
  1. Umsetzung mit vba aufgrund Groesse geplant

Hallo Conti,

der Code geht von Kriterium1 in A aus und Krit2 in B.
Wenn anders, ändere das in der Prozedur Main ab.

Der Code benutzt aus Schnelligkeitsgründen die Hilfsspalte Z.
Wenn die nicht frei ist nimm eine andere freie und ändere das in der Prozedur Einfuegen ab.

Code einfuegen:
Alt+F11, Einfügen—Modul, Code reinkopieren, ggfs. abändern, VB-Editor schließen.

Code starten:
Alt+F8, Extras—Makro—Makros—Makro „Main“ ausführen lassen.

Gruß
Reinhard

Option Explicit

Sub Main()
Application.ScreenUpdating = False
Call Einfuegen("A2A3")
Call Einfuegen("AND(B2"""",B3"""",B2B3)")
Application.ScreenUpdating = True
End Sub

Sub Einfuegen(ByVal Formel As String)
Dim Zei As Long
With Worksheets("Tabelle1")
 Zei = .Cells(Rows.Count, "A").End(xlUp).Row
 .Range("Z3:Z" & Zei).Formula = "=IF(" & Formel & ",TRUE,"""")"
 On Error Resume Next
 .Range("Z3:Z" & Zei).SpecialCells(xlCellTypeFormulas, xlLogical).EntireRow.Insert
 On Error GoTo 0
 .Range("Z:Z").ClearContents
End With
End Sub

Hallo Thomas,

danke für deinen Hinweis. Pivot ist die pragmatische Lösung.

Grüsse

Conti

Hallo Reinhard,

hat nach umstellen und anpassen funktioniert !! Vielen Dank, super.

Auch wenn es Dich als Experten sicher langweilt: Was empfiehlst du einem VBA Einsteiger (5 Stunden Erfahrung) als passendes Buch ?

Fokus sollte die Standardisierung gängiger Office Anwendungen in Excel sein.
Oder statt Buch doch lieber Online schauen ?

Viele Grüsse

Conti

Hallo Conti,

Was empfiehlst du einem VBA Einsteiger (5 Stunden Erfahrung)

Geduld :smile: 5 Stunden sind gar nix. Die 5 Stunden würden nichtmal Einstein reichen um meinen Code so zu verstehen wie z.B. Thomas ihn flüssig lesen kann und sofort versteht.

als passendes Buch ?

In einem seit Jahren bestehenden Brett zu VB und Vba was von den Moderatoren und FAQ-Betreuern gut gepfegt/gewartet wird stehen so
Buchempfehlungen bzw. Vorgehensweisen um VB, Vba zu erlernen als Anfänger natürlich in der Brettbeschreibung und/oder in der dazugehörigen FAQ. Denn sowas interessiert ja jeden newbie.

Okay, die Realität sieht hier anders aus.

Zu deiner Frage.
Ich persönlich besitze nur 4 Bücher zu Vba. Zwei davon sind für Anfänger völlig uninteressant, sie sind von Dan Appleman zu/über APIs.
Dann noch eines von Michael Schwimmer aber das ist Vba für Fortgeschrittene, bringt also Anfängern wenig.
Aber merk dir den namen für später, genauso wie Melanie Breden,
denn sie sind empfehlenswert, allerdings weiß ich nicht ob sie Bücher
speziell für Anfänger geschrieben haben.

Dann noch ein Buch von Bernd Held, gekauft ganz früh zu meiner Vba-Anfangszeit. Mein Tipp: der Autor ist nicht empfehlenswert.

Du siehst also auf dem Vba-Buchmarkt kenne ich mich nicht aus.
Übrigens, auf allen diesen Büchern ruht bei mir eine dicke Staubschicht.
An sich löse ich seit Jahren jedwedes Vba-Problem durch Wissen, F1, Google.

Zurück zu dir. Als Anschub ist es ja okay ein Buch zu benutzen.
Hilfreich dazu für dich ist sicherlich daß es da m.E. zum erstmaligen Reinkommen in die Materie völlig egal ist ob das Buch von XL 97 oder XL 2010 handelt.

Ergo, warum sollst du da 50 € bezahlen für ein Buch zu Vba in XL 2010, während du eines zu XL 97 schon für 2 @ bekommst sofern es überhaupt noch angeboten wird.

Also gehe in die Tasche, hol 50€ o.ä. raus und schlag bei ebay oder anderen Börsen zu und kauf dir für kleines Geld mehrere Bücher dazu.
Dann hast du eine gute Basis.

Es gibt auch im Internet mehrere u.a. z.B. von der Fernuni Hagen runterladbare kostenlose vba Kurse.
Ich persönlich lerne wenn schon denn schon lieber mit einem Buch in der hand.

Fokus sollte die Standardisierung gängiger Office Anwendungen
in Excel sein.

? Hä? Watt du wolle :smile:

Oder statt Buch doch lieber Online schauen ?

Wie du magst. Letztlich habe ich mein ganzes Vba-Wissen online erworben.
D.h. in Foren mitlesen. Anfangs dort Fragen stellen wie was geht in Vba.
Dieses dann testen testen und versuchen zu verstehen.
Irgendwann kommt dann der Tag wo du zum ersten mal einem anderen mit einer Vba-Lösung die auch noch funktioniert helfen konntest.

Der restliche Weg wie bei mir ist dann vorgezeichnet, du fragst immer weniger und kannst immer mehr beantworten.
Und wie angedeutet, Bücher zu Rate zu ziehen bringt nix mehr.
Denn da steht logischerweise nicht exakt der fall drin um den es geht.
Also MUß man das von sich aus durch Wissen, F1, Google losen.

Zusammenfassung:
Kauf dir als Anschub Bücher.
Den „Rest“ *gg* lernste durch Forenmitlesen, besser als jeer Kurs o.ä.

Gruß
Reinhard

Grüezi Conti

Was empfiehlst du einem VBA Einsteiger (5 Stunden Erfahrung) als
passendes Buch ?

Fokus sollte die Standardisierung gängiger Office Anwendungen
in Excel sein.
Oder statt Buch doch lieber Online schauen ?

Ein IMO guter Einstieg sind die Grundlagen, die hier als PDF-Datei zur Verfügung stehen:

http://www.fernuni-hagen.de/imperia/md/content/zmi_2…

Ansonsten in einer gut situierten Buchhandlung vorbeigehen, genügend Zeit mitbringen und die dortigen Bücher näher ansehen nach Themengebieten, Aufmachung und momentanen Fragen.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Thomas,

klasse. Danke fuer deinen super tipp mit fernuni hagen. Hast du noch eine Online Idee fuer mich ? Lg Klaus

klasse. Danke fuer deinen super tipp mit fernuni hagen. Hast
du noch eine Online Idee fuer mich ? Lg Klaus

Hallo Klaus,

lade dir hier mal die Offline Version herunter.
http://www.herber.de/wiki.html
ist eine zip die eine chm beinhaltet.

Gruß
Reinhard

sorry hab aber krine ahmnung wie man eine .chm oeffnet ? bg Klaus

sorry hab aber krine ahmnung wie man eine .chm oeffnet ? bg

Hallo Klaus,

irgendein Programm, Winzip, Winrar o.ä. hat ja wohl die zip entziptt und die chm in einen Ordner geschrieben.
Gehe mit dem Explorer in diesen Ordner und doppelklicke auf die chm.

Gruß
Reinhard

Hallo Reinhard,

die .chm Datei geht vom smartphone ( Samsung Galaxy) allerdings nicht auf. Idee waere klasse. Beste gruesse klaus