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

Kopieren von Mehrfachauswahl

Forumthread: Kopieren von Mehrfachauswahl

Kopieren von Mehrfachauswahl
01.07.2003 08:37:43
Azubi
Ist es möglich mit VBA eine Mehrfachauswahl von Zellen so zu kopieren, dass das Verhältnis der Abstände gleich bleibt? Als Beispiel, ich will in Zeile 1 Spalte A, C und E kopieren und dann selektiere ich in Zeile 2 die Spalte A und füge ein, und die Werte stehen wieder in A, C und E. Alle bisherigen Versuche haben damit geendet, das die Werte aneinander ausgegeben wurden in A,B,C.
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren von Mehrfachauswahl
01.07.2003 11:45:17
ingo
Hallo Azubi???,
versuchs mal mit folgendem Macro.
Du mußt evt. einige Sachen anpassen, aber vielleicht hilft es Dir ja weiter.

Sub kopieren_mit_abstand()
Dim startzelle As Range
Dim zielzelle As Range
Dim zelle As Range
Sheets("tabelle1").Activate
For Each zelle In Selection
zelle.Copy
Sheets("tabelle2").Paste Destination:=Sheets("tabelle2").Range(zelle.Address)
Next
End Sub

Vorgehensweise:
1. in tabelle1 die zu kopierenden Zellen markieren
2. makro starten
fertig
das makro kopiert immer in die entsprechenden Zellen der Tabelle2
Gruß ingo

Anzeige
AW: Kopieren von Mehrfachauswahl
02.07.2003 09:29:11
Azubi
Ja, danke. Das kommt schon näher. Es müsste nur auch möglich sein, die Zellen innerhalb der gleichen Tabelle einzufügen. Ich experimentiere jetzt mal mit Offset ein wenig herum.

AW: Kopieren von Mehrfachauswahl
01.07.2003 09:12:40
Yvonne
Hallo,
mit Kopieren geht das - glaube ich - nicht. Aber das hier sollte funktionieren:

Sub test()
Dim i As Integer
For i = 1 To 5 Step 2
Cells(2, i).Value = Cells(1, i).Value
Next i
End Sub

Gruß, Yvonne

Anzeige
AW: Kopieren von Mehrfachauswahl
01.07.2003 09:16:29
Azubi
Danke, so in der Art haben wir es bisher gelöst, aber da es sich nicht, wie in dem Beispiel, nur um drei Zellen handelt, hatten wir halt gehofft, dass mit direktem Kopieren Laufzeit gespart werden könnte.

Anzeige

Infobox / Tutorial

Mehrfachauswahl in Excel kopieren: So gelingt's


Schritt-für-Schritt-Anleitung

Um eine Mehrfachauswahl in Excel zu kopieren, kannst du ein VBA-Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und gehe zu der Tabelle, aus der du die Zellen kopieren möchtest (z.B. Tabelle1).
  2. Markiere die Zellen, die du kopieren möchtest (z.B. A1, C1, E1).
  3. Öffne den VBA-Editor mit ALT + F11.
  4. Füge ein neues Modul ein (Einfügen > Modul) und kopiere den folgenden Code hinein:
Sub kopieren_mit_abstand()
    Dim startzelle As Range
    Dim zielzelle As Range
    Dim zelle As Range
    Sheets("tabelle1").Activate
    For Each zelle In Selection
        zelle.Copy
        Sheets("tabelle2").Paste Destination:=Sheets("tabelle2").Range(zelle.Address)
    Next
End Sub
  1. Schließe den VBA-Editor.
  2. Starte das Makro (ALT + F8), wähle kopieren_mit_abstand und klicke auf Ausführen.

Jetzt sollten die Zellen mit dem korrekten Abstand in Tabelle2 eingefügt sein. Wenn du die Zellen innerhalb derselben Tabelle einfügen möchtest, kannst du den Zielbereich entsprechend anpassen.


Häufige Fehler und Lösungen

  • Fehler: "Diese Aktion funktioniert nicht bei einer Mehrfachauswahl."

    • Lösung: Stelle sicher, dass du die Zellen in der richtigen Reihenfolge markierst und das Makro korrekt ausgeführt wird.
  • Fehler: "Diese Funktion funktioniert nicht bei einer Mehrfachauswahl."

    • Lösung: Überprüfe, ob die Zellen in der Ziel-Tabelle existieren und korrekt adressiert sind.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch die Funktion OFFSET in Excel nutzen. Hier ist ein Beispiel:

Sub test()
    Dim i As Integer
    For i = 1 To 5 Step 2
        Cells(2, i).Value = Cells(1, i).Value
    Next i
End Sub

Dieses Makro kopiert die Werte von Zeile 1 in die entsprechenden Zellen in Zeile 2, wobei nur die Spalten A, C, und E berücksichtigt werden.


Praktische Beispiele

Angenommen, du möchtest die Zellen A1, C1 und E1 kopieren und in A2, C2 und E2 einfügen. Mit dem oben genannten Makro kannst du dies ganz einfach tun. Wenn du mehrere Zellen in verschiedenen Zeilen kopieren möchtest, kannst du die Schleife im Makro entsprechend anpassen.


Tipps für Profis

  • Bei der Verwendung von VBA in Excel ist es hilfreich, die Namen der Tabellen und Zellen genau zu kennen, um Fehler zu vermeiden.
  • Du kannst das Makro so anpassen, dass es automatisch die Zielzelle auswählt, basierend auf der letzten verwendeten Zelle in der Ziel-Tabelle.
  • Nutze die Application.ScreenUpdating-Eigenschaft, um die Ausführungsgeschwindigkeit zu verbessern, indem du das Bildschirm-Update während der Ausführung des Makros deaktivierst.

FAQ: Häufige Fragen

1. Kann ich das Makro anpassen, um mehr als drei Zellen zu kopieren?
Ja, du kannst die For Each-Schleife anpassen, um beliebig viele Zellen zu kopieren.

2. Was, wenn ich die Zellen nicht in eine andere Tabelle, sondern in dieselbe Tabelle einfügen möchte?
Du kannst den Zielbereich im Makro entsprechend anpassen, um die Zellen innerhalb der gleichen Tabelle zu kopieren.

3. Welche Excel-Version benötige ich für die Verwendung von VBA?
Die oben genannten Methoden funktionieren in den meisten modernen Excel-Versionen, die VBA unterstützen, wie Excel 2010, 2013, 2016 und später.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige