Microsoft Excel

Herbers Excel/VBA-Archiv

Formel einfügen

Betrifft: Formel einfügen von: Mikey
Geschrieben am: 29.07.2014 07:23:54

Hallo Excelfreunde
ich suche ein Makro für folgende Aufgabe.
Ich habe eine Tabelle bei der in der Spalte D immer wieder zwei leere Zellen kommen.
Ich möchte in die zweite leere Zelle springen und dann von dort drei Spalten nach rechts und dort sollte die Summenformel nach oben eingetragen werden.
das ganze sollte so lange laufen bis in der Spalte D vier leere Zellen kommen!!

Ist das möglich und kann mir jemand sagen wie das makro aussehen muss??

Vielen Dank für eure Hilfe und Mühe.

Grüße
Mikey

  

Betrifft: AW: Formel einfügen von: fcs
Geschrieben am: 29.07.2014 13:47:11

Hallo Mickey,

Makro kann etwa wie folgt aussehen.

Die Summenformel muss du evtl noch etwas anpassen.
Zur Zeit wird die Summe über die Werte in Spalte D gebildet. Für ander Spalten [-3] im Formel-Code anpassen.

Gruß
Franz

Sub SummenFormel_einfuegen()
  Dim wks As Worksheet
  Dim Zeile As Long, Zeile1 As Long, Zeile_1F As Long, Zeile_L As Long
  Dim StatusCalc As Long
  
  With Application
    .ScreenUpdating = False
    StatusCalc = .Calculation
    .Calculation = xlCalculationManual
  End With
  
  Set wks = ActiveSheet
  Zeile1 = 2 '1. Zeile für Summenbildung
  Zeile_1F = Zeile1
  With wks
    Zeile_L = .Cells(.Rows.Count, 4).End(xlUp).Row
    'Altdaten in Spalte G löschen
    .Range(.Cells(Zeile1, 7), .Cells(Zeile_L, 7)).ClearContents
    For Zeile = Zeile1 To Zeile_L
      If .Cells(Zeile, 4) = "" And .Cells(Zeile + 1, 4) = "" Then
        '2 aufeinander folgende Leerzeilen
        Zeile = Zeile + 1
        'Summe jeweils ab Zeile1
'        .Cells(Zeile, 4).Offset(0, 3).FormulaR1C1 = "=SUM(R" & zeile1 & "C[-3]:R[-1]C[-3])"
        'Teilsumme der Blöcke
        .Cells(Zeile, 4).Offset(0, 3).FormulaR1C1 = _
                "=SUBTOTAL(9, R[" & Zeile_1F - Zeile & "]C[-3]:R[-2]C[-3])"
        Zeile_1F = Zeile + 1
        If .Cells(Zeile, 4).Offset(1, 0) = "" And .Cells(Zeile, 4).Offset(2, 0) = "" Then
          '4 aufeinander folgende Leerzeilen
          Exit For
        Else
        
        End If
      End If
    Next
  End With
  
  With Application
    .Calculate
    .ScreenUpdating = True
    .Calculation = StatusCalc
  End With
  
End Sub



  

Betrifft: AW: Formel einfügen von: Mikey
Geschrieben am: 30.07.2014 14:54:45

Hallo Franz,

vielen Dank für Deine Mühe, es hat mir super weitergeholfen!!

Grüße
Mikey


 

Beiträge aus den Excel-Beispielen zum Thema "Formel einfügen"