Live-Forum - Die aktuellen Beiträge
Datum
Titel
15.04.2024 16:30:01
15.04.2024 13:59:59
15.04.2024 13:54:18
Anzeige
Archiv - Navigation
1128to1132
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kopieren der Formel aktive Spalte | Herbers Excel-Forum

Kopieren der Formel aktive Spalte
08.01.2010 09:15:12
walli

Guten Morgen,
ich habe ein Makro (auch über Forum), für das Kopieren der
Formel.

Public Sub Spalte_Aktive_Formel_kopieren()
Application.Calculation = xlCalculationManual
Dim i As Long
With ActiveSheet
For i = 4 To .Cells(.Rows.Count, 1).End(xlUp).Row
.Cells(i, 30).Value = "=RC[-9]*1"       ' zb. spalte 9 von Spalte AD aus gezählt
Next
End With
Application.Calculation = xlCalculationAutomatic
End Sub
Nun möchte ich, wenn ich auf einer Spalte stehe, das ich ab Zeile 4 die Formel
per Makro nach unten kopieren kann.
Das Ende wird über die Spalte A definiert.
mfg walli

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren der Formel aktive Spalte
08.01.2010 09:33:26
welga
Hallo Walli,
wenn ich dich richtig verstanden habe, dann versuche es mal so:
Public Sub Spalte_Aktive_Formel_kopieren()
Application.Calculation = xlCalculationManual
Dim i As Long, actspal As Long
With ActiveSheet
actspal = ActiveCell.Column
For i = 4 To .Cells(.Rows.Count, 1).End(xlUp).Row
.Cells(i, actspal).Value = "=RC[-9]*1"       ' zb. spalte 9 von Spalte AD aus gezä _
hlt
Next
End With
Application.Calculation = xlCalculationAutomatic
End Sub

Gruß
welga
Die Formel sollte aktuell übernommen
08.01.2010 09:40:51
walli
Guten Morgen Welga,
nicht ganz.
Die Formel sollte aus der aktuelle Spalte von der Zelle 4 übernommen
werden.
Wenn ich also in der Spalte T stehe sollte die Formel aus der Spalte T4 bis
zum Ende kopiert werden.
mfg walli
Anzeige
AW: Die Formel sollte aktuell übernommen
08.01.2010 10:02:50
welga
Hallo Walli,
alles klar, dann hatte ich das falsch verstanden. Versuch es mal so:
Public Sub Spalte_Aktive_Formel_kopieren()
Dim i As Long, actspal As Long
Dim formel As Variant
With ActiveSheet
actspal = ActiveCell.Column
Application.Calculation = xlCalculationManual
formel = .Cells(4, actspal).Formula
For i = 5 To .Cells(.Rows.Count, 1).End(xlUp).Row
.Cells(i, actspal).Value = formel
Next
End With
Application.Calculation = xlCalculationAutomatic
End Sub

Kopiert ja aber
08.01.2010 10:22:13
walli
Hey Welga,
danke erst mal !
Kopiert ja aber die Formel verändert sich nicht.
Wenn ich z.b. nach unten ziehe, dann wird die Formel ja
entsprechend der nächsten Zeile angepasst.
mfg walli
Anzeige
Kenntnisse zu gering
08.01.2010 10:26:53
welga
Hallo,
dachte die Formel aus zeile 4 soll nach unten statisch kopiert werden. Dynamisch wird wohl etwas schwierig, da sind meine Kenntnisse zu gering.
Vielleicht kann dir ja jemand anderes helfen.
Gruß
welga
AW: Kenntnisse zu gering
08.01.2010 10:37:11
Ramses
Hallo
Unter der Voraussetzung dass in der Zeile4/Actspalte eine Formel OHNE absolute Adressierung steht, funktioniert es so
Public Sub Spalte_Aktive_Formel_kopieren()
Dim actspal As Long
With ActiveSheet
actspal = ActiveCell.Column
Application.Calculation = xlCalculationManual
.Cells(4, actspal).Copy
With .Range(.Cells(5, actspal), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, actspal))
ActiveSheet.Paste
End With
Application.Calculation = xlCalculationAutomatic
End With
End Sub
Gruss Rainer
Anzeige
Das läuft, kann man ...
08.01.2010 10:52:55
walli
Hallo Rainer,
danke für die weitere Unterstützung, es läuft.
Könnte man zur Sicherheit eine Abfrage einbauen,
wenn man nicht in der Zeile 4 steht HINWEIS bzw. Abruch ?
mfg walli
AW: Das läuft, kann man ...
08.01.2010 10:59:07
Ramses
Hallo
Public Sub Spalte_Aktive_Formel_kopieren()
Dim actspal As Long
If ActiveCell.Row <> 4 Then
MsgBox "Keine Zelle in Zeile 4 ausgewählt", vbCritical + vbOKOnly, "Fehler"
Exit Sub
End If
With ActiveSheet
actspal = ActiveCell.Column
Application.Calculation = xlCalculationManual
.Cells(4, actspal).Copy
With .Range(.Cells(5, actspal), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, actspal))
ActiveSheet.Paste
End With
Application.Calculation = xlCalculationAutomatic
End With
End Sub
Gruss Rainer
Anzeige
Danke für die Abfrag, es wird doch nicht
08.01.2010 11:46:47
walli
Hallo Rainer,
Abfrage passsst !
Leider wird die bestehende Formel aus der Zelle 4 in der aktiven Spalte
nicht kompl. bis zum Ende nach unten kopiert.
mfg Walli
AW: Danke für die Abfrag, es wird doch nicht
08.01.2010 12:41:29
Ramses
Hallo
Das wird es schon,... wenn in Spalte A die Daten auch bis nach unten gehen.
In welcher Spalte stehen am meisten Daten, bzw. welche ist die Referenzspalte für die Formel ?
Ändere einfach die Spaltennummer in
.Cells(.Cells(.Rows.Count, 3).End(xlUp).Row
hier wurde der Bezug auf Spalte C gesetzt
Gruss Rainer
Da ist beim kopieren was verloren gegangen...
08.01.2010 12:44:40
Ramses
Hallo
Sorry,... habe gerade gesehen, dass da beim kopieren irgendwo was verloren gegangen ist.
Die Zeile muss natürlich so heissen
With .Range(.Cells(5, actspal), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, actspal)).Select
Gruss Rainer
Anzeige
Einwandfrei Danke Rainer -)))
08.01.2010 12:58:15
walli
ja, aber...
08.01.2010 10:54:40
welga
Hallo Rainer,
dann wird aber meines Erachtens nach nur in die aktuell selektierte Zelle die Formel übernommen. Die Frage war aber, ein komplettes runterkopieren.
Deshalb denke ich dass es hiermit gehen sollte:
Public Sub Spalte_Aktive_Formel_kopieren()
Dim actspal As Long, i As Long
With ActiveSheet
actspal = ActiveCell.Column
Application.Calculation = xlCalculationManual
.Cells(4, actspal).Copy
For i = 5 To .Cells(.Rows.Count, 1).End(xlUp).Row
Cells(i, actspal).Select
ActiveSheet.Paste
Next i
Application.Calculation = xlCalculationAutomatic
End With
End Sub

Anzeige
?????????????
08.01.2010 10:57:41
Ramses
Hallo
"...Die Frage war aber, ein komplettes runterkopieren...:"
Was meinst du denn damit ?
Das war die Frage:
"..das ich ab Zeile 4 die Formel per Makro nach unten kopieren kann..."
... und das macht der Code.
Also überleg dir vorher was du haben willst.
gruss Rainer
Hallo Welga, ja damit wird bis unten kopiert !
08.01.2010 11:48:58
walli
Danke, Welga, für die bisherige Unterstütung !!!
08.01.2010 10:51:05
walli

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige