Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1376to1380
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
Inhaltsverzeichnis

Summenbildung

Summenbildung
15.08.2014 16:19:37
walter
Hallo,
ich möchte gern Summen aus verschiedenen Zellen also die
Summenzellen sind nicht immer die Selben bilden und dies Summe
in eine andere Datei kopieren.
Beispiel:
Ich klick C10, C12, C13 und C14 an.
Daraus die Summe soll in der neuen Datei reingesetzt werden.
Habe mal aufgezeichnet:
ActiveCell.FormulaR1C1 = "=SUM(R[4]C[-7]+R[6]C[-7]+R[11]C[-7])"
dies habe ich mit gedrückter Taste ctrl getan.
Geht sowas ?
gruß waltermb

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Habe es anders gelöst -)
15.08.2014 17:57:43
walter

AW: Habe es anders gelöst -)
15.08.2014 18:36:23
Daniel
Hallo waltermb,
auch wenn Du es jetzt anders gelöst hast, eine kurze Antwort von mir.
Ich gehe davon aus, dass Du so bei einer Makroaufzeichnung vorgegangen bist.
Du musst allerdings zunächst eine Zelle aktivieren, in die die Formel geschrieben wird, z.B. C9.
Schreibe so:
Range("C9").Activate
ActiveCell.FormulaR1C1="=SUM(R[4]C[-7]+R[6]C[-7]+R[11]C[-7])"
oder so:
Cells(9,3).FormulaR1C1="=SUM(R[4]C[-7]+R[6]C[-7]+R[11]C[-7])"
Beides funktioniert, beim Makro aufzeichnen auch mit gedrückter Strg-Taste. Aufgezeichnet wird allerdings immer die 1. Variante (ActivCell.Formula...)
Grüße
Daniel B.

Anzeige
Daniel Super Danke für den Tip kann ich...
15.08.2014 19:20:38
walter
Hallo Daniel,
für dennoch nützlich,
Danke.
Kann ich noch eine FRage stellen ?
Wenn ja DANKE im Voraus.
Ich habe diese Zeile:
Workbooks(wbk).Range("I23") = ActiveSheet.ActiveCell.Value
Warum kommt Fehlermeldung ?
Laufzeitfehler 438
Objekt diese Eigenschaft oder Methode nicht.
gruß
Walter mb

Du hast das Beispiel nun möchte ich ...
15.08.2014 19:34:55
walter
Hallo Daniel,
leider hast Du mir den Anstoß gegeben, doch etwas anders zu "Basteln".
Wenn in der Tabelle im Bereich:
B26:B50 + B94:B118 + B164:B188 ein m steht, sollen aus den Zeilen
wo das m steht aus der Spalte D der entsprechende Wert addiert und in
Zelle J33 geschrieben werden.
Geht sowas ?
mfg
walter mb

Anzeige
AW: Daniel Super Danke für den Tip kann ich...
15.08.2014 19:57:05
Ewald
Hallo Walter,
du gibst nur das Workbbook an aber nicht das Sheet.

Workbooks(wbk).Sheets("Tabelle1").Range("I23") = ActiveCell.Value
Gruß Ewald

...& hast damit = 2 Fehler in 1 CodeZeile! :-] orT
15.08.2014 20:30:15
Luc:-?
Gruß, Luc :-?

Danke ihr Beide, habe aber noch...
15.08.2014 20:43:17
Walter
Hallo zusammen,
könnt ihr mir aber hier noch helfen ?
Wenn in der Tabelle im Bereich:
B26:B50 + B94:B118 + B164:B188 ein m steht, sollen aus den Zeilen
wo das m steht aus der Spalte D der entsprechende Wert addiert und in
Zelle J33 geschrieben werden.
Geht sowas ?
mfg
walter mb

AW: Danke ihr Beide, habe aber noch...
15.08.2014 22:19:29
Peter
Hallo Walter,
was hältst Du von der VBA-Lösung:
Option Explicit
'   Wenn in der Tabelle im Bereich:
'   B26:B50 + B94:B118 + B164:B188 ein m steht, sollen aus den Zeilen
'   wo das m steht aus der Spalte D der entsprechende Wert addiert und in
'   Zelle J33 geschrieben werden.
Public Sub Summieren()
Dim rBereich  As Range
Dim rZelle    As Range
Dim dSumme    As Double
With ThisWorkbook.Worksheets("Tabelle1") ' den Tabellenblattnamen ggf. anpassen
Set rBereich = .Range("B26:B50,B94:B118,B164:B188")
For Each rZelle In rBereich
If rZelle.Value = "m" Then
dSumme = dSumme + Val(Replace(.Range("D" & rZelle.Row).Value, ",", "."))
End If
Next rZelle
.Range("J33").Value = dSumme
End With
End Sub
Gruß Peter

Anzeige
Danke Peter und Ewald aber...
16.08.2014 09:51:11
walter
Guten Morgen zusammen,
super beide Makros OK !!!
Leider habe ich noch ein kleines Problem.
Ich möchte von der aktiven Tabelle aus I23 den Wert in die Datenbank kopieren,
hier nochmal der Code, der den Namen kopiert aber nicht den Wert aus der Tabelle in die
Datenbank, warum auch immer.
Dim wbh As String
wbh = ActiveWorkbook.Name
With ActiveCell
.Copy 'hier der Name der auch in Datenbank eingesetzt wird.
End With
Dim rngAct As Range
Dim lngLetzte As Long
Set rngAct = ActiveCell
Windows("- Rg. Datenbank.xlsm").Activate
With ActiveSheet
lngLetzte = Application.Max(.Cells(.Rows.Count, 6).End(xlUp).Row, _
.Cells(.Rows.Count, 7).End(xlUp).Row, _
.Cells(.Rows.Count, 8).End(xlUp).Row) + 1
.Cells(lngLetzte, 1) = rngAct.Value
' oder
' rngAct.Copy .Cells(lngLetzte, 1)
Application.CutCopyMode = False
.Cells(lngLetzte, 1).Select
ActiveCell.Offset(0, 1).Select
End With
Workbooks(wbh).Sheets("Tabelle5").Range("I23") = ActiveCell.Value
mfg
walter mb

Anzeige
Zellwert kopieren
16.08.2014 11:36:05
Erich
Hi Walter,
probier mal

Sub abcd()
Dim rngAct As Range
Dim lngLetzte As Long
Set rngAct = Range("I23")        ' Zelle I23 im aktiven Blatt der aktiven Mappe
Workbooks("- Rg. Datenbank.xlsm").Activate
With ActiveSheet                 ' zufällig aktives Blatt in "- Rg. Datenbank.xlsm"
lngLetzte = Application.Max( _
.Cells(.Rows.Count, 6).End(xlUp).Row, _
.Cells(.Rows.Count, 7).End(xlUp).Row, _
.Cells(.Rows.Count, 8).End(xlUp).Row) + 1
.Cells(lngLetzte, 1) = rngAct.Value
End With
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
Hallo zusammen ... --)) Endlich
16.08.2014 11:56:44
walter
Hallo zusammen,
ich habe es geschafft, so wie ich es wünschte.
Dim ac As Range
Set ac = ActiveCell
ac.Value = Workbooks(wbh).ActiveSheet.Range("I23").Value
So wird der gewünschte Wert eingesetzt.
Schönes Wochenende
mfg
walter mb

AW: Danke ihr Beide, habe aber noch...
15.08.2014 22:29:33
Ewald
Hallo Walter,
teste mal so
Sub addieren()
Dim myrange As Range
Dim zelle As Range
Dim mysum As Double
Set myrange = ActiveSheet.Range("B26:B50, B94:B118, B164:B188")
For Each zelle In myrange
If zelle.Value = "m" Then
mysum = mysum + zelle.Offset(0, 2).Value
End If
Next
ActiveSheet.Range("J33").Value = mysum
End Sub
Gruß Ewald
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige