Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Tabelle dynamisch verlinken
#1
Hallo Excel-Freunde,
ich habe aktuell folgendes Problem und dachte eigentlich, dass dies einfach zu lösen sei. Bisher hatte ich jedoch keinen Erfolg. Denke es wird nur über ein Makro gehen.

Ich habe eine Tabelle mit verschiedenen Daten erstellt. Hierbei wurden eingige Zellen verbunden und eingefärbt. Zudem unterliegt die Tabelle kontinuierlichen Veränderungen. Ich möchte nun diese Tabelle in einem zweiten Arbeitsblatt und zwar so, dass sie alle Änderungen ein zu eins übernimmt und somit auch die Farben, Rahmen, verbundenen Zellen. Außerdem kann es sein, dass ich nur einen Teil, also Spalten übernehmen möchte und an einen definierten Ort setzten möchte - d.h. nicht einfach nur die andere Tabelle im ganzen an die gleich Stelle kopieren.

Hat jemand von euch eine Idee für einen Makro oder auch eine klassiche Formel ?

Besten Dank schonmal vorab
Michael
Antworten Top
#2
Hi Namensvetter,

zuerst solltest du deine verbundenen Zellen entfernen, da das zumeist nur aus optischen Gründen gemacht wird und das optische Bild kann man anders herstellen. Verbundene Zellen bereiten iaR nur Probleme bei späteren Aktionen.

Dann zeichne die notwendigen Arbeitsschritte doch per Macrorecorder auf. Wenn es eine überschaubare Anzahl verschiedener Verlinkungsvorgänge sind, dann ist das schnell erledigt.

Den so erstellten Code postest du dann hier, noch besser stellst hier eine Musterdatei zur Verfügung, um den Code zu optimieren.
Mit freundlichen Grüßen  :)
Michael
Antworten Top
#3
Hallo Zwergel,

viel Dank für deine Antwort.
Ohne verbundene Zellen ist es im Prinzip ja nur ein Kopiervorgang eines bestimmten Tabellenbereiches. Mein Macrorecorder gibt mir dann soetwas hier:


Range("A1:R162").Select
Selection.Copy
Sheets("Sheet6").Select
Range("A1").Select
ActiveSheet.Paste


Sieht jetzt erst mal ziemlich simpel aus, aber wenn ich es einfach zwischen Sub XY() un End Sub setzt bekomme ich ne Fehlermeldung. Habe ich vergessen irgentetwas zu definieren ? wie kann ich dann veranlassen, dass der eingefügte Bereich bei jeder Änderung im Ursprungsblatt aktualisiert wird ?

Viele Grüße
Michi
Antworten Top
#4
Hi Micha,

also nachvollziehen, warum du ein Problem mit der Aufgabe der verbundenen Zellen hast, kann ich nicht. Hast ja auch nix dazu geschrieben, warum die sein müssen nach deiner Auffassung und dawir hier deinen Tabellenaufbau nicht sehen kann man nur wenig mutmaßen, aber nicht konkret helfen.

Was spricht gegen ein Kopieren, aber dann nicht simpel einfügen sondern dann Verknüpfung einfügen und damit sind die Daten in beiden Tabellen dann synchron, bei jeeder Änderung in der Ursprungstabelle werden die Werte in die andere Tabelle übernommen.

Und was dein Codeschnipsel soll ist mir unklar, da daraus nicht auif Fehler geschlossen werden kann. So wird das ja auch nicht beim Aufzeichnen erfaßt um dann anschließend Sub xy und End Sub drum rum zu schreiben.

Hier mal mein Testcode, um bestimmte Tabellenbereiche aus Tabelle 1 in Tab2 zu kopieren und dort als Link mit den Formaten des Originals einzutragen:

Code:
Option Explicit

Sub Makro1()
'
' Makro1 Makro
'

'
    Range("A1:I18").Select
    Selection.Copy
    Sheets("Tabelle2").Select
    Range("A1").Select
    ActiveSheet.Paste Link:=True
    Sheets("Tabelle2").Select
    Application.CutCopyMode = False
    Selection.Copy
    Application.CutCopyMode = False
    Sheets("Tabelle1").Select
    Selection.Copy
    Sheets("Tabelle2").Select
    Range("A1:I18").Select
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Columns("C:C").EntireColumn.AutoFit
    Columns("D:D").EntireColumn.AutoFit
    Application.WindowState = xlMinimized
    Application.WindowState = xlMinimized
    Sheets("Tabelle2").Select
End Sub

Das ist der Rohcode aus der Aufzeichnung, bei dem anschließend dann nachgearbeitet werden muß (select usw. entfernen)
Mit freundlichen Grüßen  :)
Michael
Antworten Top


Gehe zu:


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