Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile einfügen, Formel übernehmen

Zeile einfügen, Formel übernehmen
23.03.2007 16:54:00
Peter
Hallo,
mit folgendem Code kann ich per Makro eine Zeile einfügen und die Formel der darüberliegenden Zelle quasi "herunterziehen". Dort wo keine Formeln stehen sondern nur Werte oder leere Zellen wird nichts gemacht. Bis jetzt wird die Formel nur in die neu eingefügte leere Zelle eingefügt.
Ich möchte, dass die Formeln bis in Zeile 1000 quasi durch "herunterziehen", so das die Bezüge weiter stimmen, eingefügt werden.
hier der Code:

Sub Formeln_uebernehmen()
ActiveCell.EntireRow.Insert
For Each cell In Rows(ActiveCell.Row - 1).SpecialCells(xlCellTypeFormulas, 23)
cell.Copy Destination:=cell.Offset(1, 0)
Next
End Sub
Kann mir jemand helfen?
Danke
Grüße aus Berlin
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Ergänzung
23.03.2007 17:23:34
Peter
Hallo nochmal,
die Formeln sollen nicht bis Zeile 1000 eingetragen werden sonder bis in die Zeile in der das letzte mal ewas in Spalte A steht. Wenn z.B. in Zelle A115 etwas steht und in A116 nicht, dann sollen die Formeln bis in Zeile 115 "heruntergezogen werden.
Danke im Voraus
Peter
Anzeige
AW: Ergänzung
23.03.2007 19:12:00
Beate
Hallo Peter,
Erklärung in der Beispieldatei - sie enthält 2 Tabellenblätter mit verschiedenen Varianten:
https://www.herber.de/bbs/user/41337.xls
Gruß,
Beate
Fehlerkorrektur
23.03.2007 19:26:48
Beate
Das Makro Formel_in_B_2() enthält einen Fehler, da sich die Formel auf die falsche Tabelle bezieht.
Muss so lauten:
Sub Formel_in_B_2()
'Makro berücksichtigt eine Überschriftenzeile
'B3:B65536 werden komplett geleert, für den Fall das Tabelle in A sich verkürzt hat
'Dann wird von B2 nach unten so weit ausgefüllt, wie A belegt ist
'die korrekte Formel muss also in B2 stehen!
Range("B3:B65536").Clear
Range("B2").AutoFill Range("=OFFSET($B$2,,,COUNTA(Tabelle2!$A:$A)-1,1)"), xlFillSeries
End Sub



Gruß,
Beate
Anzeige
AW: Fehlerkorrektur
24.03.2007 13:51:11
Peter
Danke, hat mir auch weitergeholfen.
Kontakt
27.03.2007 11:57:00
Michael
Hallo Beate,
könntest du mich bitte mal unter upsmike@web.de kontaktieren? Es geht nochmal um die Makros Werte in Zahlen umwandeln.Mein Thread dazu ist leider schon im Archiv.
Beim Threadersteller möchte ich mich entschuldigen, das ich seinen Thread hier so "missbraucht" habe aber ich wusste sonst nicht, wie ich nochmal eine Nachricht an Beate hätte loswerden können.
Vielen Dank euch beiden.
Gruss..Mike
Anzeige
AW: Ergänzung
23.03.2007 19:17:00
Daniel
Hallo
probiers mal so:

Sub Formeln_uebernehmen()
Dim cell As Range
Dim a As Long
ActiveCell.EntireRow.Insert
a = Cells(65536, 1).End(xlUp).Row - ActiveCell.Row + 1
For Each cell In Rows(ActiveCell.Row - 1).SpecialCells(xlCellTypeFormulas, 23)
cell.Copy Destination:=cell.Offset(1, 0).Resize(a, 1)
Next
End Sub
gruß, Daniel
Anzeige
AW: Ergänzung
24.03.2007 13:50:12
Peter
Danke, funktioniert bestens
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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