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 kopieren (runterziehen) bis Zeile X
#1
Hallo Zusammen,
 
ich habe wieder mal ein Excel-Problem für welches ich VBA benötige:
 
In einem Tabellenblatt habe ich in den Zellen A56:Z20000 Werte stehen und in den Zellen AF56:BG56 Formeln die diese Werte auswerten. In der Zelle „AA3“ habe ich eine schon funktionierende Formel, welche die Nummer der letzten mit Werten gefüllten Zeile errechnet.
 
Bis zu dieser Zeile sollen die Formeln in AF56:BG56 heruntergezogen werden, also wenn in Zelle „AA3“ z.B. die Zahl 124 steht, dann bis zur Zeile 124 (AF124:BG124) und wenn in Zelle „AA3“ 12000 steht, dann eben bis zur Zeile 12000.
 
Das Ziel besteht darin, die Anzahl der Formeln auf das notwendigste zu reduzieren, zumal es in meiner Tabelle 20 derartige Tabellenblätter gibt. Dabei reicht es mir aber, wenn das Makro nur für jedes Tabellenblatt separat funktioniert.
 
Vielen Dank im Voraus für eventuelle Hilfen.
Antwortento top
#2
Hallöchen,

nutze mal den Excel-Word-Makrorekorder

Der bringt Dir etwas in der Art:

Code:
Sub Makro1()
'
' Makro1 Makro
'

'
    Range("B1").Select
    Selection.Copy
    Range("B1:B8").Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
End Sub


Den Bereich kannst Du mit dem Zellwert flexibel gestalten, z.B. wenn der in D1 steht

Range("B1:B" & Range("D1").Value) ...

Eventuell musst Du noch die eine oder andere Zeile verrechnet, aber Grundrechenarten funktionieren auch in VBA Smile
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
[-] Folgende(r) 1 Benutzer sagt Danke an schauan für diesen Beitrag:
  • Ruletka23
Antwortento top
#3
Mit 365 reicht eine einzige Formel aus. Mehr bei Gestellung Deiner Datei.
Antwortento top
#4
Vielen Dank!

Bei mir sieht das Relorder-Makro etwas anders aus. Aber mit deinem Zusatz "Range("AB10").Value)" funktioniert alles so, wie es soll. Noch einmal vielen Dank!

Sub Zone_Formel_runterkopieren_Fixieren()
    Range("AF55:CX55").Select

    Selection.AutoFill Destination:=Range("AF55:CX" & Range("AB10").Value), Type:=xlFillDefault

    Range("AF56:CX" & Range("AB10").Value).Select

    Selection.Copy

    Range("AF56").Select

    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

        :=False, Transpose:=False

    Range("AF54").Select

    Application.CutCopyMode = False
End Sub
Antwortento top


Gehe zu:


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