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

Tabelle per Makro(?) aktualisieren

Tabelle per Makro(?) aktualisieren
29.06.2022 08:22:26
LeRayZ
Guten Morgen,
ich habe eine Excel-Datei bei der ich insgesamt 5 Blätter habe.
1. Blatt Übersicht -- Name: ,,Total"
2. - 5. Blatt Daten -- Namen: ,,A", ,,I", ,,C" und ,,T"
In der Übersicht holt sich Excel dann die benötigten Informationen per Sverweise, alles schön und gut.
Das Suchkriterium, muss ich aber immer, wenn ich eine neue Zeile in einer der 4 Datenblätter eintrage, logischerweise auch in der Übersicht neu eintragen.
Gibt es hierfür ein "einfaches" Makro, damit Excel quasi immer:
von Blatt ,,A": Ab Zelle B5 bis zum letzten Eintrag in der Spalte sucht - kopiert und dann in der Übersicht einfügt (Ab Zelle)
+
von Blatt ,,I" Ab Zelle A4 bis zum letzten Eintrag in der Spalte sucht - kopiert und dann in der Übersicht in der nächsten freie Zelle in Spalte B einfügt (Quasi unter den Daten von Blatt A
+
von Blatt ,,C" Ab Zelle A7 bis zum letzten Eintrag in der Spalte sucht - kopiert und dann in der Übersicht in der nächsten freie Zelle in Spalte B einfügt (Quasi unter den Daten von Blatt I
+
von Blatt ,,T" Ab Zelle A6 bis zum letzten Eintrag in der Spalte sucht - kopiert und dann in der Übersicht in der nächsten freie Zelle in Spalte B einfügt (Quasi unter den Daten von Blatt C
?
Habe es per Makro-Aufzeichnen versucht, aber leider nicht ganz realisierbar.
Leider ist die Datei zu groß(3,5 MB), egal ob ich sie als ZIP komprimiere oder nicht... Falls hier jemand einen Tipp hat, gerne bescheid sagen!
Total: Userbild
A: Userbild
I: Userbild
C:Userbild
T: Userbild
Liebe Grüße
LeRayZ

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabelle per Makro(?) aktualisieren
29.06.2022 08:34:27
ralf_b
Klar geht das, aber du verwöhnst uns zwar mit Bildern doch die kann man ganz schlecht in Excel nutzen.
Diese Beispiele deuten darauf hin das die Daten nicht alle identisch organisiert sind. z.b Spaltenbeschriftung oder formatierte(intelligente) Tabelle. Stimmt das ?
AW: Tabelle per Makro(?) aktualisieren
29.06.2022 08:45:51
LeRayZ
Ja das ist richtig.
A und I sind als Tabelle formatiert
C und T sind nicht als Tabelle formatiert.
Und die Daten fangen leider auch nicht immer in der selben Zelle an.
AW: Tabelle per Makro(?) aktualisieren
29.06.2022 08:49:30
LeRayZ
PS:
Wenn ich die Datei woanders hochladen darf, werde ich das natürlich tun!
darfst du oder...
29.06.2022 09:21:06
ralf_b
du reduziert die Datei auf ein funktionales Minimum. Ich schätze in irgendeinem Arbeitsblatt sind 1 Mio Zeilen eingeblendet. oder ein fettes Bild ist irgendwo eingebaut.
All das brauchen wir dazu nicht.
Anzeige
Datei ist da!
29.06.2022 10:12:30
LeRayZ
So jetzt aber!
https://www.herber.de/bbs/user/153845.xlsx
Habe die Tabellenformatierungen jetzt rausgenommen, hoffentlich hat das am Ende keine Auswirkungen auf die Ursp. Datei
AW: geht mit VBA, geht aber auch ohne VBA ...
29.06.2022 10:32:16
neopa
Hallo LeRayZ,
... und zwar verhältnismäßig einfach, wenn Du Deine 4 Tabellen zuvor mit der Funktion "Als Tabelle formatieren" in "intelligente" Tabellen wandelst.
Dann kann mit einer relativ einfachen PowerQuery(PQ)-Code in Deiner XL-Version eine kleine Abfrage definiert werden, die genau das von Dir angestrebte auch realisiert. Jederzeit kann dann durch eine Betätigung eines entsprechenden Funktion-Icons oder einer Tastenkombination die Aktualisierung vorgenommen werden oder auch automatisch bei Öffnung der Datei.
Wäre das eine Lösungsvariante für Dich?
Gruß Werner
.. , - ...
Anzeige
AW: geht mit VBA, geht aber auch ohne VBA ...
29.06.2022 10:33:27
LeRayZ
Leider ist das Blatt C so Umfangreich, dass man die nicht als intelligente Tabelle formatieren "kann", weil viele Spalten die gleiche Überschrift haben usw usw usw.
AW: wenn dem so sein sollte ...
29.06.2022 10:41:28
neopa
Hallo LeRayZ,
... wie Du jetzt schreibst (was aber für mich zumindest momentan nicht wirklich nachvollziehbar ist), steht das im Widerspruch zu Deiner Beispieldatei und Deinen vorherigen Bildangaben und Du solltest zumindest Deine Beispieldatei entsprechend präzisieren. Das dürfte dann auch für eine VBA-Lösung notwendig sein.
Gruß Werner
.. , - ...
AW: wenn dem so sein sollte ...
29.06.2022 10:45:40
LeRayZ
Ich habe die Datei extra klein gehalten, da ich nur veranschaulichen wollte, mit welcher Formel ich arbeite und wo die Spalten "sitzen".
Während ein Blatt bis Spalte CD geht, geht eins nur bis Spalte T...
Am Ende wäre die Datei wieder zu groß...
Anzeige
na dann ....
29.06.2022 10:54:46
ralf_b
Du bekommst was du wolltest abhängig von meinen Verständnis deiner Beispieldatei. Ich gehe davon aus das im Datenbereich der Tabellen immer die erste Spalte die Id ist und immer eine Überschrift vorhanden ist.
und immer ist die Spalte 2 was du zusätzlich in der Übersicht haben willst.
Ich habe es mir gespart festzustellen, ob die ID-Spalte eine Überschrift hat. Ein Bild zeigt ja das dort was fehlen könnte. Aber die schnell zusammengeklickte Beispieldatei hat diesen Fehler nicht. Somit, seber Schuld. Aber es sollte trotzdem klappen.

Sub Uebersicht()
Dim ws As Worksheet
Dim rng As Range
Dim rngdata As Range
Dim shUebersicht As Worksheet
Set shUebersicht = Worksheets("Total")
For Each ws In Worksheets
If ws.Name  "Total" Then
Set rng = ws.UsedRange
Set rngdata = rng.Columns(1).Offset(1).Resize(rng.Rows.Count - 1, 2)
With shUebersicht
.Cells(.Rows.Count, 2).End(xlUp).Offset(1).Resize(rngdata.Rows.Count, 2).Value = rngdata.Value
End With
End If
Next ws
End Sub

Anzeige
AW: na dann ....
29.06.2022 11:17:13
LeRayZ
Hmm leider kopiert er damit zu viele Daten, da es noch mehrere Blätter in der Datei gibt.
Also ich dachte, ich hätte das relativ gut beschrieben, sorry!
Ich denke es müssen schon extra die vier Datenblätter angesprochen werden.
Blatt A: Alle Daten ab (und inklusive) Zelle B5 (B4 nicht, hier ist die Überschrift)
Blatt I: Alle Daten ab (und inklusive) Zelle A4 (A3 nicht, Zelle ist leer)
Blatt C: Alle Daten ab (und inklusive) Zelle A7 (A6 nicht, Zelle ist leer)
Blatt T: Alle Daten ab (und inklusive) Zelle A6 (A5 nicht, hier ist die Überschrift)
Spalte 2 soll in dem Makro absolut keine Rolle spielen, es geht wirklich nur um das "stumpfe" Copy und Paste Verfahren von den oben genannten Daten aus der Spalte Local Id (ohne Überschrift)
Anzeige
AW: na dann ....
29.06.2022 12:06:37
ralf_b
So., ein neuer Ansatz. ICh weis ja nicht was zu viele Daten bei dir bedeutet, aber ich gehe jetzt davon aus das Spalte 2 nicht gefragt ist.
Die Leerzeile wrid übersprungen.

Option Explicit
Sub Uebersicht()
Dim ws As Worksheet, shUebersicht As Worksheet
Dim rngdata As Range, x As Range
Dim arrdata
Dim i As Long
Set shUebersicht = Worksheets("Total")
i = 1
For Each ws In Worksheets
If ws.Name  "Total" Then
Set rngdata = ws.UsedRange.Columns(1).Offset(1).Resize(ws.UsedRange.Rows.Count - 1)
If TypeName(arrdata) = "Empty" Then
ReDim arrdata(0, 1 To rngdata.Rows.Count)
Else
ReDim Preserve arrdata(0, 1 To UBound(arrdata, 2) + rngdata.Rows.Count)
End If
For Each x In rngdata.Cells
If x.Value  "" Then
arrdata(0, i) = x.Value
i = i + 1
End If
Next
End If
Next ws
ReDim Preserve arrdata(0, 1 To i)
With shUebersicht
.Cells(.Rows.Count, 2).End(xlUp).Offset(1).Resize(UBound(arrdata, 2)).Value = Application.Transpose(arrdata)
End With
End Sub

Anzeige
AW: na dann ....
29.06.2022 13:13:34
LeRayZ
Mit zu vielen Daten war gemeint, dass es wie schon gesagt noch mehrere Blätter in der Datei gibt.
Mit diesem Makro, zieht er sich auch die Daten aus den anderen Blättern heraus.
Außerdem zieht er sich immer noch die Überschrift mit raus (nach Export ist die erste Zeile in Total: Local id)
PS: Man müsste wohl noch mit einbauen, dass er als allererstes alle Daten in der Übersicht ab Zelle B6 abwärts entfernt.
Damit er immer wieder in B6 anfängt...
AW: na dann ....
29.06.2022 13:33:46
ralf_b
mehrere Blätter? im ersten Beitrag schreibst du 5 Blätter mit der Übersicht. Mehr sind nicht drin. Das bedeutet alle Blätter außer der Übersicht werden bearbeitet.
Ist wohl doch nicht so. Bei mir werden keine Überschriften kopiert. Um das bei dir nachvollziehen zu können mußt du mir eine passende Datei geben.
ersetze die folgenden Codebereiche

' If ws.Name  "Total" Then
If ws.Name = "A" Or ws.Name = "I" Or ws.Name = "C" Or ws.Name = "T" Then  'bekannte Blätter auswählen
With shUebersicht
.Range(.Range("B6"), .Range("B6").End(xlDown)).ClearContents 'Liste löschen
.Range("B6").Resize(UBound(arrdata, 2)).Value = Application.Transpose(arrdata) 'neue Daten einfügen
End With

Anzeige
AW: na dann ....
29.06.2022 14:04:28
LeRayZ
Tut mir leid, dachte ich lade nur die nötigen Blätter hoch.
Sorry, aber wo soll ich den neuen Code jetzt einfügen? :D
AW: na dann ....
29.06.2022 16:09:25
ralf_b
den oberen anstatt dem If ws.Name "Total" Then
und den unteren sollte man erkennen. die with - end with klammer austauschen
AW: na dann ....
30.06.2022 08:18:02
LeRayZ
Bekomme leider die Fehlermeldung: Typen unverträglich
Userbild
AW: na dann ....
30.06.2022 18:57:01
ralf_b
is mir unerklärlich, ich habe keine Fehlermeldung bekommen.
welchen Wert hat denn "i"?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige