Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Formeln per Makro x mal runterziehen
#1
Hallo,

ich bin auf der Suche nach einem Makro wie ich eine Formel für eine bestimmte (variable) Anzahl runterziehen kann.

In der Beispieldatei habe ich meine Wertetabelle die in A3 beginnt und Formeln aus anderen Tabellenblättern zusammenträgt.
Ich kenne die maximale Formelanzahl (lässt sich berechnen), hier 12.

Jetzt würde ich gerne den Bereich A4 : D4 um die Anzahl in C2 runterziehen.

In der Beispieldatei habe ich eine Ausgangssituation dargestellt und wie ich mir das Ergebnis vorstelle.

Kennt dafür jemand eine Lösung?

Falls noch Fragen bestehen, immer her damit

Viele Grüße

Felix


Angehängte Dateien
.xlsx   Makro formeln runterziehen.xlsx (Größe: 10,88 KB / Downloads: 4)
Antworten Top
#2
Hallo,

ändere die Formel so ab:


Code:
=WENN(ZEILE(A1)>$C$2;"";WENN(AUFRUNDEN((ZEILE()-3)/$D$1;0)+1<=$B$1+1;AUFRUNDEN((ZEILE()-3)/$D$1;0)+3;""))

Dann kannst Du sie beliebig nach unten ziehen, siehst es aber nicht!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#3
Hey,

danke erstmal, es geht aber nicht unbedingt ums nicht sehen.

Wenn ich es nur bis 1000 runtergezogen habe, muss ich eben dran denken, dass ich es ab 1001 noch mal ziehen muss.

Ich könnte natürlich schon mal vorsorglich bis 50.000 ziehen, allerdings wird die Datei dann ja unnötig groß. Außerdem berechnet Excel die dann auch, sind dann aber leer. Dennoch vergeht Rechenzeit.

Deshalb war meine Idee das flexibel mit einem Makro zu lösen.
Antworten Top
#4
Hallo,


solange Du keine volatilen Formeln oder Matrixfunktionen/ -formeln benutzt dürfte das nicht ins Gewicht fallen. Wenn Du eine intelligente Tabelle draus machst, dann werden die Formeln bei jeder neuen Zeile automatisch ergänzt!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#5
hhmmm....

ich weiß zwar nicht genau, was du mit volatilen Formeln meinst, aber mit deiner Formel wird nichts automatisch ergänzt :(

Also scheint das mal nicht Lösung meines Problems zu sein.
Antworten Top
#6
Hallo,


http://www.online-excel.de/excel/singsel.php?f=171


man sollte auch alles lesen:

http://www.excel-ist-sexy.de/intelligent...nlisten-1/
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#7
Also ich habe jetzt mal mit dem Makrorekorder folgendes aufgenommen:

Code:
Sub formel_autofill()


   Sheets("Ausgang").Select
   Range("A4:D4").Select
   Selection.AutoFill Destination:=Range("A4:D5"), Type:=xlFillDefault
   Range("A4:D5").Select
   
End Sub
Jetzt müsste daraus doch nur eine Schleife gemacht werden, die immer eins nach unten geht und zwar so oft wie der Wert in C2
Soweit die Theorie, allerdings habe ich echt wenig Ahnung von Schleifen :D
Kann mir da jmd helfen?
Antworten Top
#8
Hallo,

Code:
with Sheets("Ausgang")
   .Range("A4:D4").AutoFill Destination:=.Range("A4:D" & 4+ .Range("C2"))
end With

ungetestet!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • FelixWeb
Antworten Top
#9
Oh mann danke, es funktioniert...

Ich verstehe deine Lösung zwar nicht ganz, aber es funktioniert. DANKE!!!!

hier mal mein Versuch einer Schleife, es funktioniert aber nicht...

Code:
Code:Sub formel_autofill()

Dim Zeile As Integer


Sheets("Ausgang").Select
For Zeile = 4 To 10

   
   Range(Cells(1, Zeile), Cells(4, Zeile)).Select
   Selection.AutoFill Destination:=Range(Cells(1, Zeile), Cells(4, Zeile)), Type:=xlFillDefault
   Range(Cells(1, Zeile), Cells(4, Zeile + 1)).Select
   
Next Zeile
   
End Sub
Antworten Top
#10
Hallo,


Aufbau von Range:


Code:
cells(Zeile,Spalte)


!!!!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • FelixWeb
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste