Hallo,
habe ein Excel-Problem.
Wie bekomme ich es hin, daß in der H-Spalte jeweils automatisch die Anzahl der maximalen nebenstehenden Leerzeichen ausgegeben wird.
Zur Erklärung: Bei A sind D2 bis E2 leer = 2
Bei B lediglich E3 leer = 1
Bei C sind es C4 bis E4 = 3 und bei D sind es C5 bis F5 = 4
Da ich eine ganze Anzahl von Daten in einer Tabelle habe, würde ich das gerne automatisch regeln. Wie ist das zu schaffen?
A1 B1 C1 D1 E1 F1 G1 H1
Name 88 89 90 91 92 93 Anzahl Leer
A 1 243 500 2
B 2 145 779 444 1
C 3 323 3
D 4 347 4
Danke schonmal
Hier noch mal eine verbesserte Version der Tabelle:
A1 / B1 / C1 / D1 / E1 / F1 / G1 / H1
Name / 88 / 89 / 90 / 91 / 92 / 93 / Anzahl Leer
A: / 1 / 243 / — / — / 500 / — / 2
B: / 2 / 145 / 779 / — / 444 / — / 1
C: / 3 /— /— /— / 323/— / 3
D: / 4 / — /— /— /— / 347 /4
Ich hoffe, jetzt ist es klarer
Hi Marco,
füge in Zelle H2 folgende Funktion ein:
=ANZAHLLEEREZELLEN(A2:F2)
und kopier die Formel die Spalte H nach unten.
Lese aber auch in der Hilfe zu Anzahlleerestellen nach, wie die Funktion mit Formelen und Nullwerten in Zellen umgeht.
Spalte G wird in deinem Beispiel nicht mitberechnet?!
Gruß
Reinhard
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Benutz doch bitte den Html pre-Tag
Hi Marco,
klicke rechts auf Antwortschreiben dann siehst du im Bild wie ich den pre-Tag benutzt habe.
Gruß
Reinhard
So siehst geordneter aus:
A B C D E F G H
1 Name 88 89 90 91 92 93 Anzahl Leer
2 A 1 243 500 2
3 B 2 145 779 444 1
4 C 3 323 3
5 D 4 347 4
Hier noch mal eine verbesserte Version der Tabelle:
A1 / B1 / C1 / D1 / E1 / F1 / G1 /:H1
Name / 88 / 89 / 90 / 91 / 92 / 93 / Anzahl Leer
A: / 1 / 243 / — / — / 500 / — / 2
B: / 2 / 145 / 779 / — / 444 / — / 1
C: / 3 /— /— /— / 323/— / 3
D: / 4 / — /— /— /— / 347 /4
Ich hoffe, jetzt ist es klarer
Hallo Reinhard, das mit der Anzahlleerezellen ist ja schön und gut, ich möchte allerdings nicht gesamte Anzahl haben, sondern die Anzahl der maximal nebeneinanderliegenden leere Zellen haben. Und die beträgt bei A nunmal nicht 3 (wenn ich mit Anzahll… arbeite, kommt das heraus), sondern 2 (da D und E leer sind).
Gruß
Marco
Hi Reinhard,
danke für den guten Tipp mit dem HTML Pre-Tag.
axo 
Hallo Reinhard, das mit der Anzahlleerezellen ist ja schön und
gut, ich möchte allerdings nicht gesamte Anzahl haben, sondern
die Anzahl der maximal nebeneinanderliegenden leere Zellen
haben. Und die beträgt bei A nunmal nicht 3 (wenn ich mit
Anzahll… arbeite, kommt das heraus), sondern 2 (da D und E
leer sind).
Hallo Marco,
geht m.E. nur über VBA. Öffne mit Alt+F11 den Vb-Editor, oben bei Einfügen „Modul“ auswählen. Jetzt müsste sich ein großes weißes Fenster auftun (wenn nicht auf F7 klicken). Dorthin kopierst du den nachstehenden Makrocode. VB-Fenster wieder schließen.
Jetzt kannst du die Funktion MaxLeer wie die exceleigenen benutzen. Direkt eingeben oder über Einfügen–Funktion–Benutzerdefiniert–MaxLeer
Gruß
Reinhard
Function MaxLeer(Bereich As Range)
Application.Volatile
Dim Neu As Integer
For Each zell In Bereich
If zell.Value = "" Then
Neu = Neu + 1
Else
If Neu \> MaxLeer Then MaxLeer = Neu
Neu = 0
End If
Next zell
End Function
Hallo Reinhard,
klingt gut. Doch es taucht beim Ausführen der Funktion folgender Fehler:
Fehler beim Komplieren: Erwartet: Anweisungsende
Dann öffnet sich das Modul am Punkt von Application.
Ein Fehler drin?
klingt gut. Doch es taucht beim Ausführen der Funktion
folgender Fehler:
Fehler beim Komplieren: Erwartet: Anweisungsende
Dann öffnet sich das Modul am Punkt von Application.
Ein Fehler drin?
Hallo Marco,
nö, bei mir klappt es problemfrei, hast du den Code komplett reinkopiert? Denn wenn man „End Function“ wegläßt o.ä. kommt auch dieser Fehler.
Gruß
Reinhard
Function MaxLeer(Bereich As Range)
Application.Volatile
Dim Neu As Integer
For Each zell In Bereich
If zell.Value = "" Then
Neu = Neu + 1
Else
If Neu \> MaxLeer Then MaxLeer = Neu
Neu = 0
End If
Next zell
End Function
Hi Reinhard,
also bei mir ist alles richtig drin. Er meckert nur immer noch. Und Excel meckert außerdem noch über nen fehlenden Namen oder so.
also bei mir ist alles richtig drin. Er meckert nur immer
noch. Und Excel meckert außerdem noch über nen fehlenden Namen
oder so.
Hi Marco,
da bin ich überfragt 
Eine Möglichkeit noch, bastle ne kleine Beispieldatei wo es bei dir nicht funktioniert und schick sie mir…
Gruß
Reinhard
Anderer Ansatz
Hallo Reinhard,
habe es inzwischen anders gelöst. Einfach in ner anderen Tabelle folgendes eingesetzt:
=WENN(ISTLEER(Tabelle1!D33);(A32+1)*(ANZAHL(Tabelle1!$D33:smiley:33)>0);0)
Das einzige Problem, was ich nun noch habe, ist, dass die Anzahl auch gezählt wird, wenn ich nur eine Zahl in der Reihe habe. Dann sollte das Ergebnis immer 0 sein. Kannst Du mir schreiben, wie ich das da jetzt noch erfolgreich mit einbauen kann?
Gruß
Marco