Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Zählen, wenn Wert das erste Mal über 3,5
zurück: Textdatei importieren mit DatumsVariable weiter: Jede3. Zeile vom einen zum Anderen Arbeitsblatt Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Gast



Verfasst am:
13. Jul 2009, 12:01
Rufname:

Zählen, wenn Wert das erste Mal über 3,5 - Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hallo!

Ich habe eine Tabelle

Spalte A
1
1,1
1,2
1,3
1,4
2,0
2,8
2,6
3,0
3,2
3,6
3,9
4,0


Wie sag ich mittels vba meinem Excel, dass es den ersten Wert der größer als z.B. 3,5 ist, kopieren soll? Da geht es nicht um das Kopieren an sich, das schaff ich, aber die korrekte Ansprache will irgendwie nicht.

Danke
bst
Programmierer


Verfasst am:
13. Jul 2009, 12:58
Rufname: Bernd
Wohnort: Ilsfeld


AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hi,

wenn die Werte immer aufsteigend sortiert sind nimm VERGLEICH.

Das liefert Dir - mit Vergleichstyp = 1 - die Zeile des größten Wertes der kleiner oder gleich dem Suchkriterium ist. Ggf. musst Du also noch 1 Zeile weiter.

VERGLEICH in VBA ist Application.WorksheetFunction.Match

cu, Bernd
Gast



Verfasst am:
13. Jul 2009, 13:38
Rufname:

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hallo!

Ich hab grad die Excel Hilfe bemüht. Wie schrein ich das Argument da richtig rein in die Worksheetfunction. Also den "Suchbereich" und die Größe?

Danke
bst
Programmierer


Verfasst am:
13. Jul 2009, 13:49
Rufname: Bernd
Wohnort: Ilsfeld

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hi,

versuche das vielleicht mal so.

cu, Bernd
--
Code:
Option Explicit

Sub x()
   Dim lngRow As Variant
   Dim dblVal As Double
   
   dblVal = 3.2
   lngRow = Application.WorksheetFunction.Match(dblVal, Range("A1:A99"), 1)
   If Cells(lngRow, 1).Value < dblVal Then lngRow = lngRow + 1
   
   MsgBox Cells(lngRow, 1).Value, , lngRow
End Sub
 
Gast



Verfasst am:
13. Jul 2009, 14:38
Rufname:


AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hallo Bernd!


dein Vorschlag funktioniert, aber nur dann, wenn der Wert auch genau so vorkommt. Wenn ich aber einfach eine Grenze setzen will irgendwo im Wertbereich funktioniert es nicht. Gibt es da eine andere WorksheetFunction anstatt .Match?

danke!
bst
Programmierer


Verfasst am:
13. Jul 2009, 14:45
Rufname: Bernd
Wohnort: Ilsfeld

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hi,

hier funktioniert das schon. Voraussetzung:

- die Werte sind aufsteigend sortiert
- der zu suchende Wert ist größer oder gleich dem kleinsten Wert (sonst gibt das einen Laufzeitfehler)
- der zu suchende Wert ist kleiner oder gleich dem grössten Wert (sonst liefert der Wert aus der nächsten - leeren Zelle - "".

cu, Bernd
Gast



Verfasst am:
13. Jul 2009, 14:52
Rufname:

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Servus!

Ok, ich hab mir mal die ganze Tabelle zu Gemüte geführt: Sie ist nicht komplett aufsteigend sortiert (und das kann ich aufgrund der weiteren Bearbeitung auch nicht machen), sondern hat irgendwo ein Maximum und sinkt dann wieder ab.

Der gesuchte Wert ist 2/3 vom gefundenen Maximalwert. Kann durch Zufall genau eine Zahl sein, die es gibt, oder eben auch nicht.

Jetzt wird das ganze wahrscheinlich etwas komplizierter, oder?


vlg
Gast



Verfasst am:
13. Jul 2009, 14:56
Rufname:

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Der Code bisher ist (mit Dank an das Forum):

Code:
For intI = 1 To UBound(vnBruchlast)
    vnBruchlast(intI, 1) = Application.WorksheetFunction.Max(rngZahlenbereiche.Areas(intI))
    Set rng = rngZahlenbereiche.Areas(intI).Find(What:=vnBruchlast(intI, 1), LookIn:=xlValues, LookAt:=xlWhole)
    vnBruchlast(intI, 2) = rng.Offset(0, 1)
    Set rng = Nothing
    vnBruchlast(intI, 3) = Application.WorksheetFunction.Match(vnBruchlast(intI, 1) * 2 / 3, rngZahlenbereiche.Areas(1), 1)
   Next intI
bst
Programmierer


Verfasst am:
13. Jul 2009, 15:07
Rufname: Bernd
Wohnort: Ilsfeld

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hi,

hilft Dir vielleicht sowas weiter?

cu, Bernd
--
Code:
Option Explicit

Sub x()
   Dim rngZahlenbereiche As Range
   
   Set rngZahlenbereiche = Range("A1:A10, C1:C10, D1:D10")
   MsgBox SucheWert(3.2, rngZahlenbereiche.Areas(1)).Address
End Sub

Private Function SucheWert(ByVal dblSuche As Double, ByVal rngSrc As Range) As Range
   Dim rngCell As Range
   For Each rngCell In rngSrc
      If IsNumeric(rngCell) And rngCell.Value >= dblSuche Then
         If SucheWert Is Nothing Then
            Set SucheWert = rngCell
         ElseIf rngCell.Value < SucheWert.Value Then
            Set SucheWert = rngCell
         End If
      End If
   Next
End Function
Phelan XLPH
Fortgeschritten


Verfasst am:
13. Jul 2009, 15:29
Rufname: Phelan

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Auch ne Varinte:

Code:
Sub KopieGroesserAls()
Dim arr As Variant
Dim i As Long
Dim VglWert As Double
VglWert = 3.5 'Anpassen
arr = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
For i = UBound(arr) To 1 Step -1
    On Error Resume Next
    If WorksheetFunction.Large(arr, i) > VglWert Then
        If Err.Number = 0 Then
            Range("B1") = WorksheetFunction.Large(arr, i)
            Exit For
        End If
    End If
    On Error GoTo 0
Next
End Sub

_________________
Was vorstellbar ist, ist auch machbar. - Albert Einstein
Gast



Verfasst am:
14. Jul 2009, 11:10
Rufname:

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hallo ihr zwei:

Bei dem Vorschlag von Bernd hab ich das Problem, dass er mir nicht auf die Function SucheWert zugreifen will, weil er sie nicht findet.

Und bei dem Vorschlag von Glücksritter sagt er "Type Mismatch" in der Zelle mit
Code:
For i = UBound(arr) To 1 Step -1
, wenn ich meinen Bereich mit zahlenbereiche.areas() angeben will.

vlg
bst
Programmierer


Verfasst am:
14. Jul 2009, 11:22
Rufname: Bernd
Wohnort: Ilsfeld

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hi,

Zitat:
Bei dem Vorschlag von Bernd hab ich das Problem, dass er mir nicht auf die Function SucheWert zugreifen will, weil er sie nicht findet.


Einfach den ganzen Code von mir in ein Modul kopieren und gut.

Dadurch dass ich die Funktion SucheWert als Private definiert habe muss sie natürlich im selben Modul stehen wie ihr Aufruf.

cu, Bernd
Gast



Verfasst am:
14. Jul 2009, 11:38
Rufname:

AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

Hi Bernd!

Jetzt funktioniert es.

Danke sehr!
Phelan XLPH
Fortgeschritten


Verfasst am:
14. Jul 2009, 11:47
Rufname: Phelan


AW: Zählen, wenn Wert das erste Mal über 3,5 - AW: Zählen, wenn Wert das erste Mal über 3,5

Nach oben
       Version: Office 2003

ja das mit dem Areas hab ich übersehn Very Happy
_________________
Was vorstellbar ist, ist auch machbar. - Albert Einstein
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: 0.5 abrunden und nicht aufrunden 10 bacchus 6000 19. Nov 2004, 23:18
lou38 0.5 abrunden und nicht aufrunden
Keine neuen Beiträge Excel Formeln: Wert aus einer anderen Tabelle holen 2 =KB=Shorty 4867 17. Nov 2004, 21:22
=KB=Shorty Wert aus einer anderen Tabelle holen
Keine neuen Beiträge Excel Formeln: Werte aus 30 benannten Arbeitsblättern suchen und zählen 1 Rosan 1166 29. Okt 2004, 17:23
Dance2Joys Werte aus 30 benannten Arbeitsblättern suchen und zählen
Keine neuen Beiträge Excel Formeln: fehlermeldung #wert! und automatische zellenerweiterung 6 Gast 1065 29. Okt 2004, 13:32
Gast fehlermeldung #wert! und automatische zellenerweiterung
Keine neuen Beiträge Excel Formeln: Gelbe Zellen zählen! 6 Axis_Sonnenflieger 4453 27. Okt 2004, 14:50
Axis_Sonnenflieger Gelbe Zellen zählen!
Keine neuen Beiträge Excel Formeln: Anzahl der Zeilen in Abhängigkeit von einem Wert 6 dani3l 1972 24. Sep 2004, 01:37
xyzdef Anzahl der Zeilen in Abhängigkeit von einem Wert
Keine neuen Beiträge Excel Formeln: Zählen von versch. Texten 2 andy-ypsilon 774 23. Sep 2004, 20:07
Gast Zählen von versch. Texten
Keine neuen Beiträge Excel Formeln: Wie kann ich einen Wert aus einem Vergleich übernehmen? 1 lolarenntwieder 1725 22. Sep 2004, 00:25
fl618 Wie kann ich einen Wert aus einem Vergleich übernehmen?
Keine neuen Beiträge Excel Formeln: Funktion???- für das Zählen von Wörtern in einer Zelle 3 knopi2000 1250 21. Sep 2004, 12:43
knopi Funktion???- für das Zählen von Wörtern in einer Zelle
Keine neuen Beiträge Excel Formeln: höchsten Wert a. e. Spalte und passenden Namen 6 Gast 1637 20. Sep 2004, 23:03
Fm höchsten Wert a. e. Spalte und passenden Namen
Keine neuen Beiträge Excel Formeln: Wert in einem Bereich suchen. 5 khummel 16979 16. Sep 2004, 19:54
khummel Wert in einem Bereich suchen.
Keine neuen Beiträge Excel Formeln: In Liste automatisch Zeitpunkt finden und zählen 2 ysidor 847 10. Sep 2004, 09:06
ysi In Liste automatisch Zeitpunkt finden und zählen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML Editor Forum