Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
808to812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
808to812
808to812
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Diverse Zahlen in einer Spalte summieren mit VBA

Diverse Zahlen in einer Spalte summieren mit VBA
14.10.2006 17:41:27
Josef
Guten Tag zusammen,
möchte bestimmte Zahlen in den Spalten C,F,I,L, also jede 3. Spalte bis CO, jeweils in die Zellen C8,F8,I8,L8 bis CO8 summieren.
Beispiel: Ich schreibe in C8 100 rein, dann soll der Wert aus C12,C16, C21 in Zelle C8 zu den 100 , hinzu summiert werden.
Mit Summenprodukt z.B. gehts leider nicht, weil allen Zellen der Spalten die Zahlen zu Fuß eingetragen werden.
VBA, ist nach wie vor meine große Schwäche.
Kann mir bitte jemand einen Tipp oder sogar eine Lösung geben?
Ich hoffe das mir jemand behilflich sein kann.
Danke schon mal
Gruß Josef

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diverse Zahlen in einer Spalte summieren mit V
14.10.2006 19:37:38
Erich
Hallo Josef,
warum nicht einfach so, mit der Summe in einer anderen Zeile (hier Zeile 6)?
 
 CDEFGHI
63333  6666  9999
7       
83  6  9
9       
10       
11       
1230  60  90
13       
14       
15       
16300  600  900
17       
18       
19       
20       
213000  6000  9000
Formeln der Tabelle
C6 : =C8+C12+C16+C21
F6 : =F8+F12+F16+F21
I6 : =I8+I12+I16+I21
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Die Formel kannst du nach rechts bis Spalte CO kopieren.
Willst du dir wirklich in Zeile 8 eingegebene Werte sofort mit VBA überschreiben lassen?
Natürlich ginge auch das...
Aber dann wäre noch zu klären, ob dieses Überschreiben auch erfolgen soll, wenn z. B. in F8 eine Zahl eingegeben wird.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Diverse Zahlen in einer Spalte summieren mit V
14.10.2006 23:39:33
Josef
Hallo Erich,
bin eben erst zurückgekommen, Sorry. Danke erstmal für Deine Lösung. Aber ich glaube, ich habe mein Prob total falsch erklärt.
Hier mal ein Testblatt: https://www.herber.de/bbs/user/37390.xls
Alle verbundenen Arbeitmappen, holen den Wert aus den ersten beiden Zeilen.
Ich hoffe, so ist es verständlicher.
Gruß Josef
AW: Diverse Zahlen in einer Spalte summieren mit V
15.10.2006 00:07:39
Erich
Hallo Josef,
in die Tabelle habe ich zwei Zeilen (4 und 5) eingefügt und die zwei Formeln hineingeschrieben.
Spricht da etwas dagegen?
https://www.herber.de/bbs/user/37391.xls
Andere Mappen können sich so die Werte aus den Zeilen 4 und 5 holen. VBA ist überflüssig.
Wenn sich in einer Spalte ein Wert ändert, passt sich die Summe in Zeile 4 bzw. 5 automatisch an.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Diverse Zahlen in einer Spalte summieren mit V
15.10.2006 01:27:53
Josef
Hallo Erich,
Danke für die Lösung und Deine Mühe.
es sollte eigentlich keine Hilfsspalte oder eine zusätzliche Zeile eingefügt werden. Das TB hat ca 800 Zeilen und ist mit Auswertungen wie Mittelwert, Anlieferungen, Abschreibungen ect. auf anderen TB verbunden. Ich müsste auf allen TB die Struktur neu anpassen.
Erich, ich versuche mal etwas in VBA.
Danke nochmal und schönes Wochenende
Josef
AW: Diverse Zahlen in einer Spalte summieren mit VBA
14.10.2006 20:22:11
ingUR
Hallo, Josef,
m.E. hat Erich Dir bereits einen einfach zu überschauenden Weg unter Verwendung einer zusätzlichen Ergebnisszeile gezeigt, die natürlch beliebig gelegt werden kann. Weitere Formen wären denkbar, wenn man eine Kopie der Tabelle fertigen würde und in ihr die Zeile 8 als Summe der Zeilen 8, 12, 16 und 21 der Originaltabelle darstellt, in deren Zeile 8 der Initialwert in die Zeile 8 eingetragen werden soll.
Mit VBA wird allerdings Dein Vorhaben zu reallisieren sein, und ich stelle mir das so vor:
Option Explicit Const REFROW = 8 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Static EntryValue, ExitValue Static prevCellAddr As String Dim currCellAddr As String Dim prevCell As Range Dim sum As Double 'ermittel aktuell angesprungene Zelle currCellAddr = Target.Address 'wenn der Sprung aus einer zuvor aktivierten Zelle erfolgte, 'dann prüfe, ob die Adresse in der Liste der zu berücksichtigenden Zellen ist 'Sonderfall bei deiner Aufgabe: es gilt immer die Spalte 3+n und die Zeile 8 If Len(prevCellAddr) > 0 Then Set prevCell = Range(prevCellAddr) ExitValue = prevCell.Value If prevCell.Row = REFROW Then 'der Sprung erfolgte aus der Zeile 8 (=REFROW) in die aktuelle Zelle If 3 * Int(prevCell.Column / 3) = prevCell.Column Then 'der Sprung erfolgte aus der Spalt 3=C, 6=F, 9=I 'daher Summenbildung, wenn der Wert in der Zelle verändert wurde! If EntryValue <> ExitValue Then ' Summenbildung in der prevCellSpalte, ' einschließlich dem Wert der Zeile 8 ' und schreibe das Ergebnis in prevCell sum = Cells(REFROW, prevCell.Column).Value + _ Cells(12, prevCell.Column) + _ Cells(16, prevCell.Column) + _ Cells(21, prevCell.Column) prevCell = sum EntryValue = sum ExitValue = sum End If End If End If 'Das Range-Objekt prevCell wird entsorgt: Set prevCell = Nothing End If prevCellAddr = currCellAddr End Sub
Diese Prozedur ist in den Projektunterordner für die betreffende Tabelle zu kopieren.
Den Datentyp für die Variable Sum kannst du gf. entsprechend anpassen. Ich hoffe es funktioniert als Rohbau soweit, dass nur noch Ausbauarbeiten zu erledigen sind, denn umfassend habe ich es nicht geprüft. Insbesondere der Dreissprung in den Spalten ist von mir nicht geprüft und auch der Aushang aus der Prozedur, soblad ein Bereich selegtiert wird ist noch nicht enthalten. Doch diese Arbeiten können erledigt werdeen, wenn das Gerüst im Wesentlichen das Leistet, was die Aufgabenlösung erfordert.
Gruß,
Uwe
Anzeige
AW: Diverse Zahlen in einer Spalte summieren mit VBA
14.10.2006 23:48:59
Josef
Hallo Uwe,
Erst mal Danke für Deine mit Sicherheit funktionierenden Arbeit. Habe mal ein Testblatt hochgeladen, in dem man meine wahrscheinlich nicht gute Erklärung besser versteht.
https://www.herber.de/bbs/user/37390.xls
Danke nochmal
Gruß Josef
AW: Diverse Zahlen in einer Spalte summieren mit VBA
15.10.2006 02:06:47
ingUR
Hallo, Josef,
soweit ich Deine Beispieltabelle übersehen kann und wenn keine weiteren, darunter angeordneten Tabellenblöcke hinzukommen (Wiederholung der Zeilenstruktur 1 bis 15 in darunteliegende Zeilen), dann sollte das gezeigte Grundgerüst leicht auch für die Baguetts erweiterbar sein, denn die Besonderheit ist eigentlich nur, wie man die Selektion von Zellen beobachtet, da insbesondere das Anwählen der Eingabe/Summenzellen besondere Entscheidungsstrukturen benötigt, die vom Zelleninhalt vor der Anwahl und nach dem Verlassen abhängt, also ob nur ein Überfahren der Zelle erfogte oder eine manuelle Änderung des Zelleninhalts erfolgte.
Das dabei nun die Zellen der Spalte B und danach jede dritte Spalte statt wie bisher die Spalte C und daran anschließend jede dritte Spalte als potenzielle Referenzspalte zu betrachten ist, erfordert eine Veränderung der Kriterienabfrage für den IF-Block. Hier ist nun zu untersuchen, ob der Rest der Divsion der Spaltezahl durch 3 gerade 2 ist.
Jedoch stimme ich erneut Erich zu, dass Du prüfen solltest, ob Du nicht doch mit Zusatzzeilen Arbeiten solltest, da Du nur so weiterhin Herr der Vorgänge in Deinen Tabellen sein wirst. So wird kein VBA notwendig, denn die oben von mir beschriebenen Veränderungen in VBA werden wohl nicht über Makrorecorderaufzeichnungen vorzufertigen sein, und eine weitere Ausarbeitung meines Grundgerüstes durch mich, würde m.E. die Idee der Hilfestellung nicht mehr wirklich gerecht wird, da damit dann eine Anwendung entwickelt würde, für die die professionele Anbieter zuständig sein würden. Ich zähle mit dieser Sicht auf Dein Verständnis und bleibe dennoch für weitere Fragen, die Dir bei eigener Entwicklung helfen könnten, offen.
Gruß,
Uwe
Anzeige
AW: Diverse Zahlen in einer Spalte summieren mit VBA
15.10.2006 14:22:07
Josef
Hallo Uwe,
Danke erstmal für Deine sehr umfangreiche aber auch logische Erklärung. Wenn ich mir den ganzen Aufwand, um ein paar Brötchen zu zählen mal näher betrachte, wäre das schon eine Auftragsprogrammierung, die mir jetzt erst richtig bewusst wird.
Uwe, ich bin im klassichen Sinne ein VBA Laie. Ich habe deswegen angenommen, so ein kleines Modul, dass mein Problem hätte lösen können, wäre im Handumdrehen geschrieben.
Du und Erich habt beide Recht, es mit Formeln und Zeilen einfügen zu erledigen.
Nochmal herzlichen Dank und schönen Gruß aus Köln
Josef

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige