Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1596to1600
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

Makro

Makro
29.12.2017 21:48:36
Maximus
Hallo Excel-Anwender,
ich hätte ein Anliegen, keine Ahnung ob sowas überhaupt möglich ist:
Ich habe eine Tabelle, in der in Spalte L, S, U, AD, AE, AK eine Formel ist.
Um die Formel von der ersten Zeile auf alle Zeilen zu übertragen, muss ich immer mit dem Cursor runterziehen. Da ich viele Tabellenblätter mit je sehr vielen Zeilen produziere, ist das sehr mühselig.
Besteht die Möglichkeit über ein Makro die Spalten anzusprechen, wodurch die Formel auf alle Zeilen übertragen wird?
Das Problem ist bei der Tabelle noch, dass ich unten Ergebniszeilen habe, die nicht mit der Formel überschrieben werden sollen.
Siehe Anlage, ein Beispiel mit drei Zeilen.
Gruss Markus
https://www.herber.de/bbs/user/118575.xlsm

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro
29.12.2017 23:00:36
fcs
Hallo Markus,
grunsätzlich geht es z.B. mit folgendem Makro.
Bleibt die Frage: Wie ermittelt man die letzte Zeile korrekt in die die Formel in Zeile 2 noch kopiert werden soll?
Ich habs jetzt so gelöst, dass in Spalte J von Zelle J1 die Mehode End mit dem Parameter xlDown benutzt wird (entspricht Tastenkombination Strg+Pfeilunten wenn Zelle J1 aktiv ist).
Ob das immer passt ?
ggf. muss man eine andere Spalte oder Methode wählen.
Gruß
Franz

Sub CopyFormeln()
Dim wks As Worksheet
Dim Zeile1 As Long, ZeileL As Long
Dim Spalte As Long
If MsgBox("Formeln in Spalten L, S, U, AD, AE und AK kopieren?", _
vbQuestion + vbOKCancel, "Formeln kopieren") = vbCancel Then Exit Sub
Set wks = ActiveSheet
Zeile1 = 2
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With
With wks
'letzte Zeile mit Wert in Spalte J ermitteln
ZeileL = .Cells(Zeile1 - 1, 10).End(xlDown).Row
If ZeileL 

Anzeige
AW: Makro
30.12.2017 19:59:29
Maximus
Grüß Dich Franz,
du kommst doch bestimmt auch aus Österreich, wie mein Vater, der auch Franz heißt.
Das von dir geschriebene Makro funktioniert 1A mit *.
Genau so habe ich es mir vorgestellt!
Nach Ausführung des Makro die Anfrage, ob die Spalten kopiert werden sollen und dann wird auch exakt nur bis zur letzten beschriebenen Zeile kopiert und nicht weiter nach unten in die Formeln rein!
Einfach spitzenmäßig!
Vielen herzlichen Dank und guten Rutsch!
Markus
off topic: Vorname
31.12.2017 18:30:13
fcs
Hallo Markus,
du kommst doch bestimmt auch aus Österreich, ....
nein - gebürtiger Schleswig-Holsteiner, den es in den Nordwesten Bayerns verschlagen hat.
Meinen Vornamen hab ich nicht vom KuK-Kaiser sondern von meinem Patenonkel der wiederum den Vornamen des Arztes meiner Großmutter verpasst bekam.
Traditionell wäre es Christian (mein 2. Vorname) oder Johann gewesen - im Wechsel der Vorname des 1. Sohnes in der Familie meines Vaters über mehrere Generationen.
Gruß
Franz
Anzeige
AW: Makro
30.12.2017 10:07:31
Piet
Hallo Markus
dass ich unten Ergebniszeilen habe, die nicht mit der Formel überschrieben werden sollen
kleiner Tipp von mir, das stört mich auch bei forlaufenden Tabellen die nach unten weiter wachsen.
Deshalb stelle stelle ich meine Summen Formeln lieber ganz oben, direkt unter die Überschrift. Dann wird nichts überschrieben!!
Wenn der Endbereich weit genug nach unten geht brauchst du dir keine Gedanken über Verschieben/Erweitern zu machen!!
mfg Piet
AW: Makro
30.12.2017 14:05:11
Maximus
Hallo Piet,
aber das sind soviele, deshalb lasse ich sie lieber und stehen.
Ich bin froh, dass Franz ein Makro geschrieben hat, das ich noch nicht getestet habe und mich deshalb darauf noch nicht gemeldet habe. Werde ich spätestens bis morgen gemacht haben. Schon mal danke Franz!
Gruss Markus
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige