Clever-Excel-Forum

Normale Version: Summe aus Zellen mit Buchstaben und Zahlen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
(23.10.2018, 07:15)MisterBurns schrieb: [ -> ]die von LCohen geht ja erst ab Excel 2016

Excel 365 - Aboversion - soweit ich weiß, haben die Excel-Kaufversionen TEXTVERKETTEN noch nicht.

Wie gesagt: LO kostet nichts und hat es (heißt dort VERBINDEN).

Hier Link zu Docs (TEXTJOIN) - mundgerecht für träge Threaderöffner
Ja, ich war zu faul zum Ausbessern  :19:
Hi,

das verstehe ich nun wieder nicht, wie behauptet wird, dass das für mich funktionierende lösungen sind.
Die hilfspalte ist gut und wie geschrieben werde ich versuchen dies umzusetzen.
Und die VBA würde natürlich auch gut funktionieren, nur das der Textanteil geschlöscht wird war nicht vorgesehen.
Ich bin wirklich dankbar für unterstützung, in diesem Fall hat mich einfach interessiert ob es eine direkte Formel Lösung gibt unterhalb der Reihe.
(Da ich eigentlich immer Formeln vor VBA bevorzuge), ich möchte allerdings niemanden zu nahe tretten nur weil sein Lösungsansatz nicht der richtige weg ist. (Viele Wege führen nach Rom)
Vielleicht auch weil ich mich nicht sauber ausgedrückt habe.

Sorry und Danke
Tyler
Als Anregung noch: Eine Hilfsspalte muss ja nicht zwangsläufig neben der eigentlichen Spalte liegen. Die kann man ja auch außerhalb des Bereichs legen, in welchem man arbeitet und sie ausblenden. So kriegt der User nichts davon mit. Die Summe bezieht sich dann halt auf die ausgeblendete Spalte und kann trotzdem unter der eigentlichen Spalte stehen.
Hallo,

ich habe mich an der Formel von MisterBurns versucht.
Allerdings werden mir der Zeillen Zahlen ausgegeben ... das Liegt wohl daran das ich die VBA über eine hilsspalte laufen lasse, sprich in der zelle AD steht =D14 un gibt F3,5 aus nach VBA steht dann =14, eigentlich sollte dort 3,5 stehen.
Kann man das irgendwie umgehen? Das mir wirklich nur das Zahlen format ausgibt, manche zahlen kombinationen werden auch in Datum oder Uhrzeit umgewandelt. Und kann der Code auch mehre Spalten abgriefen z.B. AD AE AF AG ...

Danke euch

Gruß
Tyler
Ohne eine Testdatei mit Werten ist das nicht zu beantworten.
Hi,

natürlich, meine Schuld hier mit Datei.
Ich hatte zuerst versucht mit den Formeln von Ralf´s Links und der Hilfsspalte zuarbeiten,(beispiel Zelle AQ4) dass hat auch funktioniert aber die Datei war nach jedem Eintrag Sekunden lang am berechnen das die Datei nicht nutzbar war..
Da es im Original ca 500 Spalten sind mit einer unterschiedlich Zeilen zahl, da immer Zeilen gelöscht oder hinzugefügt werden könnten. Somit wollte ich MisterBurns VBA über die Hilfspalte laufen lassen und die Summe unter den eigentlichen Spalten einfügen.
Mein Code funktioniert tadellos, nur darfst du deine Hilfsspalten nicht mittels Formel verknüpfen. Denn dann löscht der Code die Buchstaben aus den Formeln, somit wird aus "=C4" dann "=4".
Ergo: Kopiere den Bereich und füge die Hilfsspalten als feste Werte ein.
Hi,

ja, der Funktioniert.
Allerdings sind die werte nicht fix in der Tabelle, die können immer wieder geändert werden.
Somit muss ich die Zellen verknüpfen um immer eine Aktuelle Summe zu haben.

Gruß
Tyler
Nein, musst du nicht. Du kannst mit Ausführung des Makros die Hilfsspalten jedes mal einfach neu kopieren (als Werte, nicht als Verknüpfung). Somit hast du immer die aktuellen Werte summiert. Der Code dafür kann zB so aussehen:

Code:
Sub Ersetzen()
Dim i As Integer, lastCol As Long, lastColNew As Long, firstColNew As Long, firstCol As Long
Dim firstRow As Long, lastRow As Long

firstRow = 3            'Erste Zeile inkl. Überschrift
firstCol = 2            'Erste Spalte
lastRow = Cells(Rows.Count, firstCol).End(xlUp).Row            'Letzte Zeile ermitteln

lastCol = Cells.Find(What:="*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column       'Ermitteln der letzten Spalte
firstColNew = lastCol + 3           'Ermitteln der ersten Spalte, in die die Werte kopiert werden

Range(Cells(firstRow, firstCol), Cells(lastRow, lastCol)).Copy Destination:=Cells(firstRow, firstColNew)            'Kopieren der Werte
lastColNew = Cells.Find(What:="*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column        'Ermitteln dern neuen letzten Spalte

For i = 65 To 122
    Range(Columns(firstColNew), Columns(lastColNew)).Replace What:=Chr(i), _
    replacement:="", lookat:=xlPart, SearchOrder:=xlByRows          'Buchstaben aus Kopie entfernen
Next

For i = firstColNew To lastColNew
    Cells(lastRow + 1, i) = WorksheetFunction.Sum(Range(Cells(firstRow + 1, i), Cells(lastRow, i)))  'Spalten summieren
Next

Range(Cells(lastRow + 1, firstColNew), Cells(lastRow + 1, lastColNew)).Copy Destination:=Cells(lastRow + 1, firstCol)     'Summen auf Ursprungstabelle übertragen
Range(Columns(firstColNew), Columns(lastColNew)).EntireColumn.Delete            'Kopierte Spalten löschen

End Sub

Ich habe versucht, diesen so variabel wie möglich zu gestalten, da ich natürlich deine Datei nicht kenne, kann hier eine Anpassung notwendig werden.
Nach der Summenerstellung werden die Hilfsspalten alle wieder gelöscht.
Seiten: 1 2 3