Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
512to516
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
512to516
512to516
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Addition

Addition
10.11.2004 13:37:12
Lukas
Hallo,
ich habe ein kleines prob mit ner schleife in vba...
auf einem exel blatt sind in einer spalte zahlen eingetragen, wobei zwischen eingigen zahlen leerzellen sind. wie schreibe ich nun ein kleines programm, das mir in diese leerzellen die summe der darüberliegenden zahlen schreibt.
mein problem liegt v.a. darin, den schleifenkopf so zu gestalten, dass das programm "von selbst wieder aufhört".
bisher habe ich dies "manuell" gelöst...
For i=1 to 1135....
kann mir jemand auf die sprünge helfen?
...die zahlen können leider nur "von oben" her addiert werden...
Merci, Greetz
Luke;)

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Addition
Harald
Hallo Lukas,
probier mal das Schleifenende mit dieser Anwesiung zu setzen:
lastrow = Worksheets("Tabelle1").Range("a65536").End(xlUp).Row 'Falls die werte in Spalte A liegen, sonst anpassen
for i=1 to lastrow ...
Gruß Harald
AW: Addition
10.11.2004 15:14:52
Mac4
Hallo Lukas,
was simpleres ist mir auf die Schnelle nicht eingefallen:

Sub test()
Dim leer, leer1, zl, rw
zl = [A65536].End(xlUp).Row + 1
Set leer = Range("A1:A" & zl).Find("", searchdirection:=xlPrevious)
If Not leer Is Nothing Then
leer1 = leer.Address
Do
If leer.Offset(-1, 0) = "" Then
Exit Sub
End If
On Error GoTo Fehler
Set leer = Range("A1:A" & zl).FindPrevious(leer)
With Range(leer1)
.FormulaLocal = "=Summe(" & Range(leer.Address).Offset(1, 0).Address & ":" & Range(leer1).Offset(-1, 0).Address & ")"
.Font.Bold = True
leer1 = leer.Address
End With
Loop While Not leer Is Nothing
End If
Fehler:
If leer Is Nothing Then
rw = Evaluate("=Min(If(A1:A18<>"""",Row(1:18)))")
Range(leer1).FormulaLocal = "=Summe(" & Range("A" & rw).Address & ":" & Range(leer1).Offset(-1, 0).Address & ")"
End If
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige