Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Excel VBA Kopieren aus anderem Tabellenblatt

Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 12:20:35
Fritz_W
Hallo Forumsbesucher,
ich möchte die Zelle D20 (enthält eine Formel) aus dem Tabellenblatt "Tabelle5" in den Zellbereich E20:AD20 ins gleiche Tabellenblatt kopieren. Eine "normale" Kopie (also nicht beschränkt auf die Formel) ist möglich.
Mein Problem ist, dass ich das Makro nicht aus dem Tabellenblatt "Tabelle5" sondern aus einem anderen Tabellenblatt starten will und dabei nicht "Tabelle5" aktivieren möchte.
Für Eure Unterstützung besten Dank im Voraus
mfg
Fritz
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 12:29:33
Rudi
Hallo,
Tabelle5.Range("E20:AD20").Formula = Range("D20").Formula
Gruß
Rudi
AW: Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 12:29:44
SH95
Hallo Fritz,
ich weiß nicht wie du dieses Makro startet willst, das bleibt dann dir überlassen. Hier wäre mal der Code für die von dir gestellten Aufgabe:
Private Sub Kopieren()
Dim lSpalte As Integer
lSpalte = 5
For lSpalte = 5 To 30
Sheets("Tabelle5").Cells(20, lSpalte) = Sheets("Tabelle5").Cells(20, 4)
Next lSpalte
End Sub
Gruß
Stefan
Anzeige
AW: Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 12:29:56
Werner
Hallo Fritz,
soll nur dir Formel kopiert werden oder der Wert der Formel?
Gruß Werner
AW: Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 12:47:17
Fritz_W
Hallo Helfer,
zunächst vielen Dank für eure Unterstützung.
Leider habe ich mein Anliegen offensichtlich nicht eindeutig genug formuliert.
Ich möchte einfach die gesamte Zelle D20 (die zwar eine Formel enthält) mit allem (auch Formatierung) in den Zellbereich E20:AD20 des gleichen Tabellenblatts (Tabelle5) kopieren, die Formel soll sich dann auch entsprechend anpassen. Das würde ich grundsätzlich auch über den Makrorekorder selbst bewältigen können.
Mein Problem ist nur, dass ich das Makro aus einem anderen Tabellenblatt (also nicht Tabelle5 ausführen möchte und hierfür auch nicht Tabelle5 aktivieren möchte.
mfg
Fritz
Anzeige
AW: Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 12:50:43
Rudi
nu dann:
Range("D20").copy Tabelle5.Range("E20:AD20")
Gruß
Rudi
AW: Excel VBA Kopieren aus anderem Tabellenblatt
17.01.2020 13:30:13
Fritz_W
Hallo Rudi,
kopiert werden soll auch die Zelle D20 aus Tabelle5 nur das Makro solle eben aus einem anderen Blatt gestartet werden. Hab es aber - wie nachstehend - anpassen können, so dass es wie gewünscht funktioniert.
Tabelle5.Range("D20").Copy Tabelle5.Range("E20:AD20")
Nochmals Danke
Gruß
Fritz
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Excel VBA: Werte aus einem anderen Tabellenblatt kopieren


Schritt-für-Schritt-Anleitung

  1. Öffne die Excel-Datei und stelle sicher, dass du die benötigten Tabellenblätter hast.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Klicke im Menü auf "Einfügen" und wähle "Modul".
  4. Füge den folgenden Code ein, um die Zelle D20 von "Tabelle5" in den Bereich E20:AD20 zu kopieren:

    Sub Kopieren()
       Sheets("Tabelle5").Range("D20").Copy Sheets("Tabelle5").Range("E20:AD20")
    End Sub
  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus, um die Daten aus einem anderen Tabellenblatt zu kopieren.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 9: Index außerhalb des gültigen Bereichs".

    • Lösung: Überprüfe, ob die Blattnamen korrekt sind. Achte auf Leerzeichen oder Tippfehler.
  • Fehler: Die Formel wird nicht korrekt angepasst.

    • Lösung: Stelle sicher, dass du die Zelle mit der Formel kopierst und nicht nur den Wert. Verwende .Copy anstelle von =.

Alternative Methoden

  • Direktes Zuweisen von Werten: Du kannst auch den Wert direkt zuweisen, ohne zu kopieren, indem du Folgendes verwendest:

    Sheets("Tabelle5").Range("E20").Value = Sheets("Tabelle5").Range("D20").Value
  • Verwenden von Formeln: Du kannst auch eine Formel in eine Zelle eingeben, um den Wert aus einem anderen Blatt zu referenzieren:

    Sheets("Tabelle5").Range("E20").Formula = "=Tabelle5!D20"

Praktische Beispiele

  1. Kopieren von Daten aus einem anderen Tabellenblatt:

    Sub KopierenDaten()
       Sheets("Tabelle1").Range("A1").Copy Sheets("Tabelle2").Range("B1")
    End Sub
  2. Kopieren und Einfügen von bestimmten Zellen:

    Sub KopiereBestimmteZellen()
       Sheets("Tabelle1").Range("A1:A10").Copy Sheets("Tabelle2").Range("B1")
    End Sub

Tipps für Profis

  • Verwende Variablen, um die Blattnamen dynamisch zu gestalten, z.B.:

    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Tabelle5")
    ws.Range("D20").Copy ws.Range("E20:AD20")
  • Fehlerbehandlung einfügen: Verwende On Error Resume Next, um das Makro robuster zu machen.


FAQ: Häufige Fragen

1. Wie kann ich Werte aus mehreren Zellen gleichzeitig kopieren?
Verwende eine Schleife, um durch die Zellen zu iterieren und die Werte zu kopieren.

2. Kann ich Daten aus einem geschützten Blatt kopieren?
Ja, du musst nur sicherstellen, dass das Blatt entsperrt ist, bevor du das Makro ausführst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige