Excel 2016 mehrere Tabellen automatisch in eine neue Verknüpfen
#1
Hallo und schönen Abend,
 
ich hoffe das mir jemand helfen kann.
 
Ich möchte mir eine Vorlage in Excel erstellen.
 
Ich habe für jeden Wochentag eine eigene Tabelle „Tabelle 1 Montag“ „Tabelle 2 Dienstag“ usw. bis Sonntag, zudem habe ich eine mit dem Namen Woche.
Ich habe in jeder Tabelle 16 Spalten von A - P. Ich hätte gerne das die Tabellen Montag bis Sonntag automatisch in die Tabelle Woche kopiert bzw. Verknüpft wird.
 
Es ist auch so das z.B. für Montag 11 Zeilen benötigt werden für Dienstag 7 und für Mittwoch 30 also für jeden Tag unterschiedlich viele Zeilen. jede Woche ist auch anders.
d.h. diesen Samstag benötige ich eventuell 8 Zeilen und nächsten Samstag können es 20 sein.
 
Kann man das mit Formeln hinbekommen oder mit Marcos oder vielleicht mit einem Script?
Ich bin leider nicht so fit mit der Sache und wäre sehr froh wenn mir jemand helfen könnte.
 
So, wenn das geschafft ist, hätte ich noch weiter Hilfe Nötig.

Vielen Dank schon mal.
Top
#2
Hallo

Mantra ON
Gleichartige Daten gehören in eine Tabelle.
Auswertungen lassen sich dann viel einfacher gestalten.
Mantra OFF
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Top
#3
(04.02.2017, 20:29)shift-del schrieb: Hallo

Mantra ON
Gleichartige Daten gehören in eine Tabelle.
Auswertungen lassen sich dann viel einfacher gestalten.
Mantra OFF

Es ist doch dann auch eine Tabelle, oder?
die werden bei mir halt dann nach KW benannt.
Top
#4
Hallo sweety,

ich glaube shift-del hat dich falsch verstanden.
Du willst doch vernünftigerweise die Daten aus verschiedenen Tabellen in eine zusammenfassen und anschliessend die einzelnen Tabellen löschen, oder nicht? Blush

Zum Problem:
Da die Anzahl immer unterschiedlich ist, sollte meines Erachtens die Aufgabe mit einen Programm gelöst werden.
Dass Kopieren einzelner Zeilen oder Zellen in einem Programm sind nur ein oder zwei Zeilen. Ein wenig mehr Aufwand ist es für deinen speziellen Dateiaufbau aus dem Programm heraus die zu kopierenden Daten  und den Ort für die Kopie zu suchen.
Hier benötigen die Helfer Hilfe von dir.  

zB
Woran kann das Programm erkennen aus welchen Arbeitsblättern es die Daten in welches Arbeitsblatt schreiben soll?
Wo befinden sich die zu kopierenden Daten in den Arbeistblättern (Anfang und Ende)?
Ist der Spaltenaufbau in allen Blättern identisch?
...

Es wäre sehr hilfreich wenn du eine Beispieldatei (kein Bild) hochlädst um Besonderheiten, die in der Beschreibung eventuell nicht erwähnt wurden, zu erkennen.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#5
Hallo Ego,

danke für deine Antwort.

Du willst doch vernünftigerweise die Daten aus verschiedenen Tabellen in eine zusammenfassen und anschliessend die einzelnen Tabellen löschen, oder nicht? Blush
nein die einzelnen Tabellen sollten nicht gelöscht werden. Wink

zu: Wo befinden sich die zu kopierenden Daten in den Arbeistblättern (Anfang und Ende)?
die Wochen befinden sich in einer einzelnen Datei, immer mit Dateinamen z.B. "KW 01, 02.01. - 08.01.2017"

Woran kann das Programm erkennen aus welchen Arbeitsblättern es die Daten in welches Arbeitsblatt schreiben soll?
jedes Arbeitsblatt hat seinen eigenen Namen. Es soll nur innerhalb der Datei geschehen.

Ist der Spaltenaufbau in allen Blättern identisch?
ja, der wird nicht mehr geändert.

ach, ja unter Spalte 1 steht immer das Datum, also z.B. 04.02.2017, in der Tabelle wäre es dann Samstag...


Angehängte Dateien
.xlsx   test3.xlsx (Größe: 15,55 KB / Downloads: 4)
Top
#6
Hallo sweety,

auch es aus meiner Sicht vernünftig ist gleichartige Daten in einer und nur einer Tabelle zu pflegen in der Anlage ein Beispielprogramm zum Testen.

Einige Bemerkungen:

1) In deiner Datei hatte er Montag andere Überschriften als die anderen Tage, ich habe sie nach deiner Aussage angepasst.
2) Wochentage werden nur berücksichtigt wenn in der Zelle A2 ein Wert vorhanden ist.
3) Die Spalte A sollte in allen zu kopierenden Daten gefüllt sein.


Code:
Option Explicit
Sub Kopieren()
Dim intI As Integer
Dim lngLastRow As Long
Dim wsVon As Worksheet
Dim wsNach As Worksheet
Dim varDaten As Variant
Dim varVon As Variant
Const strVon As String = "Montag Dienstag Mittwoch Donnerstag Freitag Samstag Sonntag"
Const strNach As String = "Woche"

varVon = Split(strVon)
Set wsNach = Worksheets(strNach)

For intI = 0 To UBound(varVon)
    Set wsVon = Worksheets(varVon(intI))
    If wsVon.Range("$A$2").Value <> "" Then
        varDaten = wsVon.Range("$A$2:" & wsVon.Range("A2").SpecialCells(xlCellTypeLastCell).Address).Value
        lngLastRow = wsNach.Cells(Rows.Count, 1).End(xlUp).Row
        wsNach.Range("A" & lngLastRow + 1).Resize(UBound(varDaten, 1), UBound(varDaten, 2)).Value = varDaten
    End If
Next intI

End Sub


Angehängte Dateien
.xlsm   Kopie von test3.xlsm (Größe: 31,64 KB / Downloads: 5)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





[-] Folgende(r) 1 Nutzer sagt Danke an Ego für diesen Beitrag:
  • sweety
Top
#7
Das ist super lieb von dir daß du dir die Mühe machst, aber was muss ich damit machen? Ein Script erstellen? Ich hab da nicht soviel Ahnung.  Sorry. ☺
Top
#8
Im Arbeitsblatt  "Tabelle1" auf den Button drücken.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#9
Danke,

kriege es aber leider nicht hin, hab unter "Tabelle1" linke Maustaste Code einfügen benutzt, muss ich das für alle Tabellen machen,
oder bin ich da komplett falsch?

schönen Sonntatg dir.

zudem kommt beim abspeichern, das es mit Macros nicht gespeichert werden kann.
Top
#10
Hallo,

wenn du die Datei von Ego heruntergeladen hast dann fülle dort einfach mal ein paar Testwerte bei den einzelnen Tagen aus, klicke dann im Tabellenblatt Tabelle1 auf den Button 'Kopieren' und schau dir anschließend das Tabellenblatt Woche an.

Zitat:zudem kommt beim abspeichern, das es mit Macros nicht gespeichert werden kann.

Die Datei enthält Makros und solche Dateien können nicht als xlsx-Datei abgespeichert werden. Du musst beim Speichern 'Excel-Arbeitsmappe mit Makros (xlsm)' als Dateityp auswählen.
Gruß
Peter
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste