Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

zahlen zählen in xls





Frage

hallo liebe freunde, habe noch eine frage. ich habe in A1 bis A1000 untereinander 75 zahlen die unterschiedlich heufig vorkommen. wichtig für mich sind die zahlen 45 bis 50. ich möchte diese zahlen (45 bis 50) nicht sortiert haben sondern möchte wissen nach wieviel feldern eine meiner zahlen wieder kommt. immer wenn eine meiner zahlen (45-50) kommt ab dem feld fängt mann neu an zu zählen. hoffe ich habe mich verständlich ausgedrückt. danke und gruß

Antwort 1 von fürLau

Hallo

Und wie soll denn das Ergebnis aussehen?
Oder möchtest Du wissen wieoft die Zahlen 45-50 in Spalte A enthalten sind?

Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt.

Antwort 2 von bierfreund

hallo
u. danke für deine antwort

Nein ich möchte nicht wissen wie oft die zahlen
45-50 an der reihe kommen.
sondern:
wenn eine meiner zahlen z. B. 47 auf feld A255 dran kommt, dann möchte ich so lange runter zählen bis wieder eine meiner zahlen z. B. die 50 auf A259 kommt.
Mann würde in diesem fall 4 zählen.
Die 4 ist das was ich suche und diese könnte z. B. in spalte B stehen.
danke und gruß

Antwort 3 von fürLau

Bin erst nach "Wer wird Millionär?" wieder da. Das geht imho nur mit vba.

Antwort 4 von fürLau

Hallo @bierfreund

Kopiere nachstehenden Code in ein Modul und starte das Makro mit Extras | Makro | Makros.. | ausführen. Dies ist auch noch detailierter unter www.excelbeispiele.de Anleitungen Nr.3 nachzulesen.

Sub zaehlen()
Dim zaehler&, letzter_treffer%, treffer%
 For zaehler = 1 To 1000 ´Range("A65535").End(xlUp).Row
If Cells(zaehler, 1).Value >= 45 And Cells(zaehler, 1).Value <= 50 Then
 Rem If treffer = 0 Then Cells(zaehler, 3) = 1 ´erster Wert Spalte C
  treffer = treffer + 1
   If letzter_treffer > 0 Then
  Rem Cells(zaehler, 3) = treffer ´Spalte C treffer
  Cells(zaehler, 2) = zaehler - letzter_treffer
    End If
  letzter_treffer = zaehler
End If
Debug.Print zaehler, Cells(zaehler, 1), letzter_treffer, treffer
Next
MsgBox "Meine Zahlen (45-50) sind im Bereich ´A1:A1000´ " _
& treffer & " mal vorgekommen."
End Sub


Dieses Makro sucht in Spalte A jedes Auftreten des Zahlenbereiches 45-50 und schreibt in Spalte B den Zeilen-Versatz zum Vorherigen.
Ich hoffe es ist das, was Du wolltest.

Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt.

Antwort 5 von Testerle

Hallo,

es geht auch mit Formeln ohne VBA.

Für den ersten Wert muss in Spalte B1 eine 1 eingetragen werden.
In B2 dann folgende Formel eintragen:

=WENN(UND(A2>=45;A2<=50);1;B1+1)

Die Formel dann bis nach unten kopieren.

Gruß

Armin

Antwort 6 von Hasie

hallo,

kann mir bitte jemand sagen wie ich zahlen Kopiere die eus einer Formel entstanden sind, diese zahlen in einer anderen Tabelle einfüge ohne die Formel mitzuhnemen??
danke
Hasie

Antwort 7 von CaroS

Hallo Hasie,

so schnell trifft man sich wieder! Deine Frage ist hier bestimmt aus Versehen reingeraten, danach hast Du ja richtigerweise einen neuen Thread (https://supportnet.de/threads/1350141) aufgemacht.

Also, hier noch mal mit schließender Klammer:

Kopieren wie immer (Strg+C oder Symbol Kopieren oder Menü Bearbeiten -- Kopieren), dann Zielzelle/-bereich markieren -- Menü Bearbeiten -- Inhalte einfügen... -- Werte -- OK

und alles weitere dann in .../threads/1350141.

Gruß,
CaroS

Antwort 8 von CaroS

Hallo bierfreund,

habe ausgehend von der Formel von Testerle einen kleinen Verbesserungsvorschlag:

B1: Zahl 1 eintragen
und bedingte Formatierung: Formel ist: =ODER(A1 < 45; A1 > 50)
und Format... -- Schrift -- Farbe: weiß -- OK -- OK

B2: =WENN(UND(A1 >= 45;A1 <= 50); 1; B1 + 1)
und bedingte Formatierung: Zellwert ist: Kleiner als =C3
und Format... -- Schrift -- Farbe: weiß -- OK -- OK

Gruß,
CaroS

Antwort 9 von CaroS

Hallo bierfreund,

da ist mir in der unteren bedingten Formatierung zum einen ein kleiner Schreibfehler passiert. Statt C3 müsste es auf jeden Fall B3 heißen: Zellwert ist | kleiner als | =B3
Diese bedingte Formatierung zeigt aber immer den letzten Zähler in Spalte B an, egal ob die Zahl in Spalte A zwischen 45 und 50 liegt.

Wenn das nicht erwünscht ist, kannst Du einfach die bedingte Formatierung von B1 auch auf alle anderen Zellen in der Spalte B anwenden. Das ergibt dann:

B1: Formel ist: =ODER(A1 < 45; A1 > 50)
B2: Formel ist: =ODER(A2 < 45; A2 > 50)
B3: Formel ist: =ODER(A3 < 45; A3 > 50)
usw. mit Format... -- Schrift -- Farbe: weiß -- OK -- OK

Gruß,
CaroS