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

Forumthread: Formel in Spalte mit VBA runterkopieren

Formel in Spalte mit VBA runterkopieren
12.01.2005 13:25:24
georg
Hallo zusammen,habe folgende Anfrage:
Ich möchte in einer dynamischen Tabelle eine Funktion in einer Spalte bis zum Listenende kopieren. DAs sieht so aus. Spalte A und Spalte B sollen in Spalte C verkettet werden und automatisch bis zum Listenende kopiert werden.
Kann mir da mal jemand einen Tip geben? Dank vorab.
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Formel in Spalte mit VBA runterkopieren
Reinhard
Hi georg,

Sub kopier()
Dim Letzte As Long, n As Long
Letzte = Range("A65536").End(xlUp).Row
For n = 1 To Letzte
Range("C" & n).FormulaLocal = "=A" & n & "&B" & n
Next n
End Sub

Gruß
Reinhard
AW: Formel in Spalte mit VBA runterkopieren
12.01.2005 13:36:39
daniel
Ich hoffe das hilft dir weiter.
Gruss
Daniel

Sub verkettet()
Dim LastRow As Integer
Dim I As Integer
LastRow = Cells(60000, 1).End(xlUp).Row
For I = 1 To LastRow
Cells(I, 3) = Cells(I, 1) & Cells(I, 2)
Next
End Sub

Anzeige
AW: Formel in Spalte mit VBA runterkopieren
12.01.2005 14:43:52
Georg
Erst einmal Danke für Eure Tipps,
ich habe mich wahrscheinlich nicht ganz deutlich ausgedrückt.
Die Funktion von Verketten steht schon in einem Template, das in dem Makro automatisch geöffnet wird. Zudem sollen noch andere Funktionen in verschiedene Spalten, die sich auf die Verkettungsspalte beziehen runterkopiert werden. Mir geht es darum die Funktionen, die in der 2 Reihe stehen bis ans Listenende zu kopieren.
Gibts da noch einen Tipp!
Anzeige
AW: Formel in Spalte mit VBA runterkopieren
u_
dann so:

Sub Formel_runter()
Dim iLZ As Long
iLZ = Cells(1, 1).End(xlDown).Row
Cells(2, 3).AutoFill Destination:=Range(cells(2,3), Cells(iLZ, 3))
End Sub

Gruß
Alles zu umständlich ;_)
u_
Hallo,

Sub verketten()
Dim iLZ As Long
iLZ = Cells(1, 1).End(xlDown).Row
Range(Cells(2, 3), Cells(iLZ, 3)).FormulaR1C1 = "=RC[-2]&RC[-1]"
End Sub

Gruß
Anzeige
AW: Formel in Spalte mit VBA runterkopieren
UweD
Hallo
sieh dir mal AutoFill an
(aus der Hilfe)
Set sourceRange = Worksheets("Sheet1").Range("A1:A2")
Set fillRange = Worksheets("Sheet1").Range("A1:A20")
sourceRange.AutoFill Destination:=fillRange
Gruß UweD
;

Forumthreads zu verwandten Themen

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-Formel automatisch auf gesamte Spalte anwenden


Schritt-für-Schritt-Anleitung

Um eine Excel-Formel automatisch auf eine gesamte Spalte anzuwenden, kannst Du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

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

  2. Klicke auf Einfügen und wähle Modul.

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

    Sub Formel_runter()
       Dim iLZ As Long
       iLZ = Cells(1, 1).End(xlDown).Row
       Cells(2, 3).AutoFill Destination:=Range(Cells(2, 3), Cells(iLZ, 3))
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

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

Diese Methode ermöglicht es Dir, eine Formel schnell und effizient bis zum Ende der Spalte zu kopieren, ohne die Formel manuell ziehen zu müssen.


Häufige Fehler und Lösungen

  • Fehler: „Laufzeitfehler 1004“

    • Lösung: Stelle sicher, dass die Zielzelle (in diesem Fall Cells(2, 3)) eine gültige Formel enthält, bevor Du die AutoFill-Methode anwendest.
  • Fehler: Formel wird nicht kopiert

    • Lösung: Überprüfe, ob Du die richtige Zielspalte angegeben hast. Achte darauf, dass die Formel in der Zelle vorhanden ist, von der aus die AutoFill-Operation gestartet wird.

Alternative Methoden

Es gibt verschiedene Methoden, um eine Formel auf eine gesamte Spalte anzuwenden, ohne die Formel zu ziehen:

  1. Formel in eine ganze Spalte kopieren:

    • Du kannst die Formel einfach in die erste Zelle der Zielspalte eingeben und dann die „Strg + Enter“-Tastenkombination verwenden, um sie auf alle Zellen der Spalte anzuwenden.
  2. Formel für ganze Spalte übernehmen:

    • Verwende die Formel =A1 & B1 in der ersten Zelle der Spalte C und ziehe sie dann mit Strg + D, um sie auf alle Zellen in der Spalte zu übertragen.

Praktische Beispiele

Hier sind einige praktische Beispiele, die zeigen, wie Du eine Excel-Formel auf eine ganze Spalte anwenden kannst:

  • Verkettung von Text:

    Sub verketten()
      Dim iLZ As Long
      iLZ = Cells(1, 1).End(xlDown).Row
      Range(Cells(2, 3), Cells(iLZ, 3)).FormulaR1C1 = "=RC[-2]&RC[-1]"
    End Sub
  • Summierung von Werten:

    • Wenn Du eine Summe von zwei Spalten erstellen möchtest, kannst Du in Zelle C2 die Formel =A2 + B2 eingeben und dann die AutoFill-Methode verwenden.

Tipps für Profis

  • Verwendung von Tabellen:

    • Wenn Du eine Tabelle in Excel verwendest, kannst Du Formeln einfacher auf die ganze Spalte anwenden. Excel aktualisiert die Formeln automatisch, wenn neue Daten hinzugefügt werden.
  • Verwende die FormelR1C1-Syntax:

    • Diese Syntax ist besonders nützlich, wenn Du mit relativen und absoluten Referenzen arbeitest und hilft, die Formel in der gesamten Spalte zu übernehmen.

FAQ: Häufige Fragen

1. Wie kann ich eine Formel auf eine gesamte Spalte anwenden, ohne sie zu ziehen? Du kannst die AutoFill-Methode in VBA verwenden, um die Formel automatisch bis zum Ende der Spalte zu kopieren.

2. Gibt es eine Möglichkeit, dies ohne VBA zu tun? Ja, Du kannst die Formel in der ersten Zelle eingeben und dann die „Strg + D“ oder „Strg + Enter“-Tastenkombination verwenden, um sie auf die gesamte Spalte anzuwenden.

3. Welche Excel-Version benötige ich für diese Methoden? Die beschriebenen Methoden sind in den meisten Excel-Versionen ab Excel 2007 verfügbar.

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