Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1060to1064
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

Ergebnis auslesen und in andere Spalte übertragen

Ergebnis auslesen und in andere Spalte übertragen
17.03.2009 08:16:28
Alex
Hallo,
Kann mir jemand bei folgendem Problem helfen:
Ich habe drei Spalten A, B, C.
In Spalte A steht in wenigen Zellen etwas drin und sehr viele Zellen sind leer. In Spalte B wird die Anzahl leerer Zellen der Spalte A gezählt und jedes Mal wenn in A etwas drin steht, beginnt er mit dem zählen der Leerzellen von vorn. Nun möchte ich, dass in Spalte C immer genau da wo in Spalte A etwas steht, die ANzahl der Leerzellen ausgegeben wird die er mir jeweils unter B ermittelt hat.
A B C
XXX 3
1
2
3
XXY 2
1
2
usw. so sollte es dann aussehen. Meine Tabelle ist sehr groß (10000 Zeilen), händisch zulesen also unmöglich. Bin sehr dankbar für jede Hilfestellung.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilenzahl pro Gruppe
17.03.2009 09:27:19
Erich
Hi Alex,
vermutlich soll Tabelle2 die Basis sein, oder?
Probier mal
 ABCD
1XXX    33
2 1  
3 2  
4 3  
5xyz 22
6 1  
7 2  
8ENDE 0-9

Formeln der Tabelle
ZelleFormel
C1{=WENN(B1="";MIN(WENN(B2:B999="";ZEILE(2:999)))-ZEILE()-1;"")}
D1{=WENN(A1=0;"";MIN(WENN(A2:A1001<>"";ZEILE(2:1001)))-ZEILE()-1)}
B2=WENN(A2=0;N(B1)+1;"")
C2{=WENN(B2="";MIN(WENN(B3:B1000="";ZEILE(3:1000)))-ZEILE()-1;"")}
D2{=WENN(A2=0;"";MIN(WENN(A3:A1002<>"";ZEILE(3:1002)))-ZEILE()-1)}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen

In Spalte D ist eine Alternative zu Spalte C. Sie kommt ohne Spalte B aus, braucht dafür aber ein Ende in Spalte A.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Zeilenzahl pro Gruppe
17.03.2009 09:48:56
dirk
Hallo Alex,
das liesse sich auch mit folgenden Formeln und Macro bewerkstelligen (Zeilenzahl ist dann egal)
In Zelle B1 folgende Formel: =IF(A1="",1,"")
In Zelle B2 bis B folgende Formel: =IF(A2="",IF(B1"",B1+1,1),"")
Fuer die Eintraege in Spalte C folgendes Macro fuer das Tabellenblatt einfuegen:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 1 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile
If Cells(i, 1).Value  "" Then
For j = 1 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile
If Cells(i + j, 2).Value  "" Then
'dummy
Else
cnt = j - 1
j = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Cells(i, 3).Value = cnt
End If
Next
End If
Next
End Sub


Gruesse
Dirk

Anzeige
AW: Ergebnis auslesen und in andere Spalte übertragen
18.03.2009 08:57:18
dirk
Hallo nochmal,
habe das macro noch etwas angepasst, damit auch die tabelle bereinigt wird, fall ein eintrag in spalte A entfernt wird.
Gruss
Dirk aus Dubai

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
lastrow = ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row
For i = 1 To lastrow
If Cells(i, 1).Value  "" Then
For j = 1 To lastrow
If Cells(i + j, 2).Value  "" Then
Cells(i + j, 3).Value = ""
Else
cnt = j - 1
j = lastrow
Cells(i, 3).Value = cnt
End If
Next
End If
Next
End Sub


304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige