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

Forumthread: Bereich in anderes Blatt kopieren VBA

Bereich in anderes Blatt kopieren VBA
andreas
Hallo zusammen,
kleines Problem,
bei drücken von commandButton1 will ich Bereich B25:Q500 in Blatt1 kopieren und in Blatt2 an gleicher Stelle B25:Q500 einfügen.
Der Code dafür ist sicherlich einfach, aber ich weiss leider nicht wie.
Danke im Voraus für die Hilfe
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Bereich in anderes Blatt kopieren VBA
29.09.2010 17:02:06
Hajo_Zi
Hallo andreas
ungetestet
Worksheets("Blatt2").Range("B25:Q500")=Worksheets("Blatt1").Range("B25:Q500")

AW: Bereich in anderes Blatt kopieren VBA
29.09.2010 17:20:38
welga
Hallo,
ich würde es eventuell mal so versuchen
Sub commanbutton1_click()
Application.CutCopyMode = False
Sheets("Blatt2").Range("B25:Q500").Copy
Sheets("Blatt1").Select
Range("B25").Select
ActiveSheet.Paste
End Sub

ist aber auch ungetestet
Anzeige
AW: Bereich in anderes Blatt kopieren VBA
29.09.2010 17:31:10
Hajo_Zi
Hallo,
das geht auch ohne select
Sub commanbutton1_click()
Sheets("Blatt2").Range("B25:Q500").Copy  Sheets("Blatt1").Range("B25")
End Sub

Gruß Hajo

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Bereich in anderes Blatt kopieren mit VBA


Schritt-für-Schritt-Anleitung

Um einen Bereich in ein anderes Tabellenblatt zu kopieren, kannst Du den folgenden VBA-Code verwenden. Dieser Code kopiert den Bereich B25:Q500 von "Blatt1" nach "Blatt2".

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge ein neues Modul hinzu, indem Du im Menü "Einfügen" auf "Modul" klickst.

  3. Kopiere den folgenden Code in das Modul:

    Sub commanbutton1_click()
       Sheets("Blatt1").Range("B25:Q500").Copy Destination:=Sheets("Blatt2").Range("B25")
    End Sub
  4. Schließe den VBA-Editor und füge einen Button auf Deinem Excel-Blatt hinzu.

  5. Weisen dem Button das Makro commanbutton1_click zu.

  6. Klicke auf den Button, um den Bereich zu kopieren.

Dieser einfache VBA-Befehl nutzt die Funktion Copy und erlaubt es Dir, den Bereich direkt in ein anderes Tabellenblatt einzufügen.


Häufige Fehler und Lösungen

Fehler: Der Bereich wird nicht korrekt kopiert.
Lösung: Stelle sicher, dass die Blattnamen ("Blatt1" und "Blatt2") korrekt sind. Achte auf Schreibfehler.

Fehler: Der Code funktioniert nicht, wenn ich das Blatt wechsle.
Lösung: Verwende den Code, der keine Select-Anweisung enthält, um das aktive Blatt nicht zu wechseln:

Sub commanbutton1_click()
    Sheets("Blatt1").Range("B25:Q500").Copy Destination:=Sheets("Blatt2").Range("B25")
End Sub

Alternative Methoden

Du kannst auch den Bereich ohne das Kopieren und Einfügen verwenden. Hier ist ein Beispiel, das die Werte direkt von einem Blatt ins andere überträgt:

Sub WerteKopieren()
    Sheets("Blatt2").Range("B25:Q500").Value = Sheets("Blatt1").Range("B25:Q500").Value
End Sub

Diese Methode überträgt nur die Werte und nicht die Formatierungen.


Praktische Beispiele

Beispiel 1: Um Daten automatisch in andere Tabellen zu kopieren, kannst Du eine Schleife verwenden:

Sub DatenKopierenAutomatisch()
    Dim i As Integer
    For i = 1 To 3
        Sheets("Blatt1").Range("B25:Q500").Copy Destination:=Sheets("Blatt" & i + 1).Range("B25")
    Next i
End Sub

Beispiel 2: Um nur bestimmte Zellen zu kopieren, kannst Du den Bereich entsprechend anpassen:

Sub BestimmteZellenKopieren()
    Sheets("Blatt1").Range("B25, C30, D35").Copy Destination:=Sheets("Blatt2").Range("B25")
End Sub

Tipps für Profis

  • Nutze Application.ScreenUpdating = False, um die Bildschirmaktualisierung während des Kopiervorgangs zu deaktivieren. Das beschleunigt den Prozess.

    Sub SchnellKopieren()
       Application.ScreenUpdating = False
       Sheets("Blatt1").Range("B25:Q500").Copy Destination:=Sheets("Blatt2").Range("B25")
       Application.ScreenUpdating = True
    End Sub
  • Wenn Du große Datenmengen kopierst, erwäge die Verwendung von Arrays zur Leistungssteigerung.


FAQ: Häufige Fragen

1. Frage
Wie kann ich Daten automatisch in andere Tabellen kopieren?
Antwort: Verwende eine Schleife in Deinem VBA-Code, um die Daten von einem Blatt zu mehreren anderen Blättern zu kopieren.

2. Frage
Kann ich nur bestimmte Zellen in ein anderes Tabellenblatt kopieren?
Antwort: Ja, indem Du die spezifischen Zellen in Deinem VBA-Code angibst. Zum Beispiel: Sheets("Blatt1").Range("B25, C30").Copy.

3. Frage
Wie kann ich die Formatierung beim Kopieren beibehalten?
Antwort: Verwende die Copy-Methode, um sowohl Werte als auch Formatierungen zu übertragen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige