Excel Summe bilden, und Spalte nach Überschrift freistellen.
#1
Hi,
also wie ich eine Summe bilde weiß ich schon.
Mein Problem ist, dass ich aus einem anderen Programm Daten in Excel exportiere.
Aus der Tabelle muss ich eine Spalte via VBA nach Überschrift freistellen, sprich, alle anderen Spalten löschen.
Diese Spalte ist jedesmal unterschiedlich lang.
Hier muss ich dann jede Zeile mit Formel berechnen und diese Formel möchte ich gerne auf alle Zellen übernehmen (kann ich mit dem Autoziehen machen.)
Das Problem hier ist, dass ich die Zeilen bis zum Ende berechnen muss, aber nicht darüber hinaus gehen möchte. Anschließend muss ich die dann erstellte Spalte zusammen adieren,
Also inder Art =Summe(B2:x) wobei x B3 - B700 sein kann.

Habt ihr da ne Idee?

Lg
Klaus
Top
#2
Hi Klaus,

formatiere deine Spalte als intelligente Tabelle mit STRG-T oder L. Die Formeln werden nach Anlegen einer neuen Zeile automatisch übernommen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#3
Hallo WillWissen,
vielen Dank für Deine Antwort.
Das funktioniert bei mir nur leider micht.
Ich kann Zeilen hinhufügen, die auch berechnet werden.
Aber mein Problem gestaltet sch so, dass ich Daten Exportiere, und damit steht die Länge der Spalte fest. Da habe ich Daten von B2 - B25. Beim nächsten mal, wenn ich die Daten exportiere ist die Länge anders B2 - B130. Und Dafür schreibe ich ein Makro. Ich brauche eine Lösung, die es mir erlaubt, sowohl den Bereich B2 - B25, als auch einen beliebig erweiterten Bereich zu erfassen. Nur das der Bereich erst fest steht, wenn die Daten exportiert werden.

LG
Jaspis
Top
#4
Hallo Klaus,

lade doch mal bitte eine, falls nötig, anonymisierte Datei hoch. Genau so , wie sie nach dem Import aussieht.
Top
#5
Hi,
hier.
Excel001Versuch ist die exportierte Tabelle,
Excel001Ergebnis ist die berechnete Tabelle.
Händisch kann ich das ohne Probleme machen. Davon zeichne ich ein Makro auf. Aber ich will das automatisch bei unterschiedlicher Länge machen.

LG
Klaus


Angehängte Dateien
.xlsx   Excel001Ergebnis.xlsx (Größe: 12,79 KB / Downloads: 1)
.xlsx   Excel001Versuch.xlsx (Größe: 26,41 KB / Downloads: 1)
Top
#6
Hallo Klaus,

der folgende Code würde exakt das erstellen, was in deinem Wunschergebnis eingetragen war (inkl. Formeln)

Code:
Option Explicit

Sub SpaltenFreistellen()
   Const UEBERSCHRIFT As String = "Dauer"
   Dim i As Long
   
   With Tabelle1
       For i = .Cells(1, Columns.Count).End(xlToLeft).Column To 1 Step -1
           If .Cells(1, i).Value <> UEBERSCHRIFT Then .Columns(i).Delete
       Next i
       
       .Range("B2").FormulaLocal = "=AUFRUNDEN(((A2*1,2)/10);0)*10"
       .Range("B2").AutoFill .Range("B2:B" & .Cells(Rows.Count, 1).End(xlUp).Row)
       .Range("D2").Value = "Minuten"
       .Range("E2").FormulaLocal = "=SUMME(B2:B" & .Cells(Rows.Count, 1).End(xlUp).Row & ")"
       .Range("D3").Value = "Stunden"
       .Range("E3").FormulaLocal = "=E2/60"
   End With
End Sub
Top


Gehe zu:


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