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

Forumthread: Inhalt Zelle nach oben kopieren

Inhalt Zelle nach oben kopieren
02.09.2020 09:24:07
xtian
Hallo,
in der Zelle C5 steht der Text Frankfurt und in der Zelle C10 steht der Text Hamburg. Gibt es die Möglichkeit,
per Makro, den Text Frankfurt aus der Zelle C5 automatisch in die Zelle C4 und den Text Hamburg aus der
Zelle C10 automatisch in die Zelle C9 zu kopieren?
Das Makro soll also in der Spalte C einen Text suchen und diesen dann eine Zelle oberhalb kopieren.
Vielen Dank.
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Inhalt Zelle nach oben kopieren
02.09.2020 11:10:39
JoWE
Hallo,
Lies Dir dazu mal dies:
https://docs.microsoft.com/de-de/office/vba/api/excel.range.find
Du sparst Dir den obligatorischen Gruß mit Deinem Klarnamen - nicht wirklich höflich!!
Ich grüße Dich trotzdem.
Gruß
Jochen
Anzeige
AW: Inhalt Zelle nach oben kopieren
02.09.2020 12:04:18
xtian
Hallo Jochen,
vielen Dank für die Info. Sollte aber keineswegs unhöflich sein. Mit dem Link kann ich leider
nicht viel anfangen. Dafür sind meine VBA-Erfahrungen halt noch zu gering.
Viele Grüße
Christian
AW: Inhalt Zelle nach oben kopieren
02.09.2020 16:55:15
JoWE
Hallo Christian,
versuch mal:
Sub changeValue()
Dim SB As String
SB = Range("C5").Value
With Worksheets(1).Range("C1:C500")
Set c = .Find(SB, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Cells(c.Row - 1, 3) = SB
'Cells(c.Row, 3).ClearContents 'falls alter Wert gelöscht werden soll?"
Cells(c.Row + 4, 3) = Cells(c.Row + 5, 3)
'Cells(c.Row + 5, 3).ClearContents 'falls alter Wert gelöscht werden soll?"
End If
End With
End Sub
Gruß
Jochen
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Inhalt Zelle nach oben kopieren in Excel


Schritt-für-Schritt-Anleitung

Um den Inhalt einer Zelle in Excel nach oben zu kopieren, kannst Du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

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

  2. Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden VBA-Code in das Modul ein:

    Sub changeValue()
       Dim SB As String
       SB = Range("C5").Value
       With Worksheets(1).Range("C1:C500")
           Set c = .Find(SB, LookIn:=xlValues)
           If Not c Is Nothing Then
               Cells(c.Row - 1, 3) = SB
           End If
       End With
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Drücke ALT + F8, wähle das Makro changeValue und klicke auf Ausführen.

Jetzt wird der Inhalt von Zelle C5 automatisch in die Zelle C4 kopiert, wenn der Text in C5 gefunden wird.


Häufige Fehler und Lösungen

  • Fehler: "Der Inhalt wurde nicht gefunden."

    • Lösung: Stelle sicher, dass der Text in der Zelle, die Du suchst, exakt mit dem Text in der Referenzzelle übereinstimmt.
  • Fehler: "Typenübereinstimmung."

    • Lösung: Überprüfe, ob die Zelle, in die Du den Wert kopieren möchtest, nicht geschützt ist.
  • Makro funktioniert nicht.

    • Lösung: Stelle sicher, dass Makros in Excel aktiviert sind. Gehe dazu in die Optionen und aktiviere die Makros.

Alternative Methoden

Falls Du kein VBA verwenden möchtest, kannst Du auch die Funktion =C5 in Zelle C4 benutzen und manuell anpassen. Diese Methode erfordert jedoch manuelles Eingreifen und ist nicht flexibel, wenn sich die Werte ändern.


Praktische Beispiele

Angenommen, in Zelle C5 steht "Frankfurt" und in Zelle C10 steht "Hamburg". Um den Text aus C5 nach C4 und den Text aus C10 nach C9 zu kopieren, kannst Du den oben genannten VBA-Code anpassen:

Sub copyToAbove()
    Dim SB1 As String, SB2 As String
    SB1 = Range("C5").Value
    SB2 = Range("C10").Value
    With Worksheets(1)
        .Cells(4, 3).Value = SB1
        .Cells(9, 3).Value = SB2
    End With
End Sub

Führe das Makro wie beschrieben aus, um die Werte zu kopieren.


Tipps für Profis

  • Verwende die Find-Methode, um sicherzustellen, dass nur die gewünschten Werte kopiert werden.
  • Experimentiere mit der ClearContents-Methode, um alte Werte zu löschen, wenn Du das möchtest.
  • Dokumentiere Deinen Code gut, damit andere oder Du selbst später leichter verstehen, was das Makro macht.

FAQ: Häufige Fragen

1. Kann ich das Makro für andere Spalten verwenden?
Ja, Du kannst die Spaltenreferenz im VBA-Code anpassen, um das Makro für andere Spalten zu verwenden.

2. Funktioniert das in allen Excel-Versionen?
Ja, das Makro sollte in den meisten modernen Excel-Versionen funktionieren, die VBA unterstützen.

3. Was mache ich, wenn ich keine VBA-Erfahrung habe?
Du kannst die Schritte in dieser Anleitung befolgen. VBA ist nicht schwer zu lernen, und es gibt viele Ressourcen online, um damit zu beginnen.

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