Anzeige
Archiv - Navigation
1072to1076
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

Zellen addieren mit VBA

Zellen addieren mit VBA
02.05.2009 16:33:29
Bernhard
Hallo,
ich möchte ein Diagramm erstellen in dem ich die Entwicklung (auf oder ab) eines Projekts im laufe der Zeit sehe und muss dafür die Werte der Spalte E zusammen zählen.
Ich hätte die Werte gerne in einem anderen Tabellenblatt ausgegeben.
Ich hatte das bisher mit der Formel in B5 zb "=B4+Daten!E12" in B6 "=B5+Daten!E13" ganz normal in Excel.
Ich hätte dies jetzt gerne in einem VBA-Code der auch erkennt, bis zu welchem Wert die Zellen in Spalte B ausgefüllt sind.
Mein bisheriger Code ist folgender:

Sub DiagrammErstellen()
Dim intz As Integer
Dim wert As Single
Worksheets("Daten").Activate
intz = 11
With Sheets("Daten")
Do Until .Cells(intz, 5).Value = ""
wert = wert + 1
Worksheets("Diagramm").Cells(i - 7, 2).Value = "wert"
Loop
End With
End Sub


Bei dieser Zeile wird mir ein Laufzeitfehler 1004 angezeigt.
Worksheets("Diagramm").Cells(i - 7, 2).Value = "wert"
Was muss ich ändern?
Danke schon im voraus für eure Hilfe!
Bernhard

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen addieren mit VBA
02.05.2009 17:25:56
chris
Hallo habe mir deinen Code nicht weiter angeschaut.
Aber der Fehler ist hier versteckt:
Worksheets("Diagramm").Cells(i - 7, 2).Value = "wert"
Du übergibst so einen String.
Aber du willst ja die Daten übergeben die in der Variable wert stehen.
Das machst du so:
Worksheets("Diagramm").Cells(i - 7, 2).Value = wert
gruß Chris
AW: Zellen addieren mit VBA
02.05.2009 18:12:56
Bernhard
das geht leider auch ohne Anführungszeichen nicht. Aber trotzdem danke
AW: Zellen addieren mit VBA
02.05.2009 18:47:28
hary
Hallo Bernhard
liegt's evtl. an der Variabelen i
Ist nicht deklariert
Gruss Hary
AW: Zellen addieren mit VBA
03.05.2009 01:17:13
Bernhard
Hallo Hary,
danke erst mal!
habs jetzt mal so versucht: (i wurde zu intz und muss so nicht mehr extra definiert werden)

Sub DiagrammErstellen()
Dim intz As Integer
Dim wert As String
Worksheets("Daten").Activate
intz = 11
With Sheets("Daten")
Do Until .Cells(intz, 5).Value = ""
wert = wert + 1
Worksheets("Diagramm").Cells(intz - 7, 2).Value = wert
Loop
End With
End Sub


Bei wert = wert + 1 wird mir jetzt Laufzeitfehler 13 "Typen unverträglich" angezeigt.
was mache ich noch falsch?

Anzeige
AW: Zellen addieren mit VBA
03.05.2009 10:05:47
chris
Hallo Bernhard,
mach doch
Dim wert As integer
gruß Chris
AW: Zellen zählen mit VBA
03.05.2009 11:32:28
Gerd
Hallo Bernhard,
eine schleifenlose Alternative.

Sub Nummern()
Dim ct As Long
ct = Range(ThisWorkbook.Worksheets("Daten").Cells(11, 5), ThisWorkbook.Worksheets("Daten"). _
Cells(11, 5).End(xlDown)).Count
With ThisWorkbook.Worksheets("Diagramm")
.Cells(2, 2).Value = 1
.Cells(2, 2).AutoFill (.Cells(2, 2).Resize(ct)), xlFillSeries
End With
End Sub


Gruß Gerd

AW: Zellen zählen mit VBA
03.05.2009 16:19:18
Bernhard
Hallo Chris,
das klappt leider auch nicht ganz, hier werden alle Werte in der selben Zelle zusammengezählt.
Ich hätte gerne einen Verlauf.
@Gerd: mit deinem Code fülle ich zwar alle Zellen aus, aber in der Folge 1,2,3,4,5 usw. und nicht mit meinen Werten...
was muss ich bei den Formeln ändern?
Danke für eure Hilfe!
Bernhard
Anzeige
AW: Zellen zählen mit VBA
03.05.2009 16:39:54
Gerd
Hallo Bernhard,
ich hatte es so aufgenommen, dass die Variable Wert von 0 jeweils um 1 hochgezählt wird, solange
die Zellen ab E11 abwärts im Blatt "Daten" gefüllt sind.
Was benötigst Du stattdessen? Die Werte aus den Zellen E11 abwärts?
Gruß Gerd
AW: Zellen zählen mit VBA
03.05.2009 18:01:11
Bernhard
ich würde gerne die Zellen E11, E12, E13, E14 aus Sheet "Daten" usw. bis zur letzten gefüllten Zelle addieren und im Sheet "Diagramm" ausgeben.
in B2 steht dann der Wert "E11"
in B3 "E11+E12 " bzw. "B2 + E12"
in B4 "E11+ E12 + E13" bzw. "B3 + E13"
in B5 "E11+ E12 + E13 + E14" bzw. "B4 + E14"
usw.
Danke schon mal für deine Hilfe!
Anzeige
AW: Zellen zählen mit VBA
03.05.2009 20:07:01
Gerd
Hallo Bernhard,
da kömme ich um eine Schleife nicht herum. Vielleicht hat einer eine rein mathematische Lösung?

Sub Kummulierte_Werte_übernehmen()
Dim Bereich As Range, varAuswahl As Variant, arrKummuliertDbl() As Double
Dim dblZSumme As Double, ct As Long
With ThisWorkbook.Worksheets("Daten")
Set Bereich = .Range(.Cells(11, 5), .Cells(11, 5).End(xlDown))
End With
varAuswahl = Bereich.Value
ReDim arrKummuliertDbl(1 To Bereich.Count)
For ct = 1 To Bereich.Count
arrKummuliertDbl(ct) = CDbl(varAuswahl(ct, 1)) + dblZSumme
dblZSumme = arrKummuliertDbl(ct)
Next
ThisWorkbook.Worksheets("Diagramm").Cells(2, 2). _
Resize(UBound(arrKummuliertDbl)) = Application.Transpose(arrKummuliertDbl)
End Sub


Gruß Gerd

Anzeige
AW: Zellen zählen mit VBA
03.05.2009 23:12:54
Bernhard
So funktioniert es auf alle Fälle super!
Vielen Dank!
AW: Zellen zählen mit VBA
03.05.2009 20:35:45
Josef
Hallo Bernhard,
brauchst du die Daten für ein Diagramm, dann kannst du das auch ohne Werte in der Tabelle
über einen Namen lösen, den du dann dem Diagramm direkt als Datenquelle zuweisen kannst.
Beispielformel für den Namen:

=TEILERGEBNIS(9;BEREICH.VERSCHIEBEN(Tabelle1!$E$11;;;ZEILE(INDIREKT("1:"&ANZAHL(Tabelle1!$E$11:$ _
E$50)));))


Gruß Sepp

AW: Zellen zählen mit VBA
03.05.2009 23:14:50
Bernhard
Danke auch dir Sepp!
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige