Anzeige
Archiv - Navigation
836to840
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
836to840
836to840
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

kleinster / grösster Wert abfragen u. Tab. erstell

kleinster / grösster Wert abfragen u. Tab. erstell
16.01.2007 22:35:16
Peter
Guten Abend
Ich möchte aus einem mit "xDatum" benannten Bereich das kleinste und das grösste Datum abfragen und anschliessend in im Worksheet "Auswertung" in Spalte A ab Zeile 7 das kleinste Datum eintragen und dann jeder folgende Tag bis zum grössten Datum.
Kann mir da jemand weiterhelfen?
Ich bin schon daran gescheitert, aus dem Bereich den kleinsten und grössten Wert abzufragen.
Danke, Peter

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: kleinster / grösster Wert abfragen u. Tab. ers
16.01.2007 22:47:06
Erich
Hallo Peter,
das sollte so gehen (Formel von A8 runterkopieren):
 ABC
131.12.2006  
209.01.200728.12.2006 
305.01.2007  
4   
5   
6   
728.12.2006  
829.12.2006  
930.12.2006  
1031.12.2006  
1101.01.2007  
1202.01.2007  
1303.01.2007  
1404.01.2007  
1505.01.2007  
1606.01.2007  
1707.01.2007  
1808.01.2007  
1909.01.2007  
20   
21   

Formeln der Tabelle
ZelleFormel
A7=MIN(xDatum)
A8=WENN(A7<MAX(xDatum);A7+1;"")
Namen in Formeln
ZelleNameBezieht sich auf
A7xDatum=Tabelle1!$A$1:$C$4
A8xDatum=Tabelle1!$A$1:$C$4

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: kleinster / grösster Wert abfragen u. Tab. erstell
16.01.2007 22:51:21
Josef
Hallo Peter,
vielleicht so.
Tabelle3

 AB
6  
705.01.2007 
806.01.2007 
907.01.2007 
1008.01.2007 
1109.01.2007 
1210.01.2007 
1311.01.2007 
1412.01.2007 
1513.01.2007 
1614.01.2007 
1715.01.2007 
1816.01.2007 
19  
20  
21  

Formeln der Tabelle
ZelleFormel
A7=MIN(xDatum)
A8=WENN($A$7+ZEILE(A1)<=MAX(xDatum);$A$7+ZEILE(A1);"")


Tabelle2

 A
105.01.2007
208.01.2007
312.01.2007
416.01.2007
5 
Excel Tabellen im Web darstellen  Excel Jeanie HTML
Gruß Sepp
Anzeige
AW: kleinster / grösster Wert abfragen u. Tab. erstell
16.01.2007 22:58:45
Peter
Hallo miteinander
Vielen Dank für die Rückmeldungen.
Tut mir leid, ich habe mich nicht exakt ausgedrückt.
Da es sich um grosse Tabellen handelt, muss ich das ganze mit VBA machen können.
Danke und Gruss
Peter
AW: kleinster / grösster Wert abfragen u. Tab. erstell
16.01.2007 23:10:08
Josef
Hallo Peter,
dann halt so.
' **********************************************************************
' Modul: Modul2 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub datumsreihe()
    Dim startDate As Date, endDate As Date
    Dim lngRow As Long, lngC As Long
    
    startDate = Application.Min(Range("xDatum"))
    endDate = Application.Max(Range("xDatum"))
    
    lngRow = 7
    
    For lngC = startDate To endDate
        Sheets("Auswertung").Cells(lngRow, 1) = CDate(lngC)
        lngRow = lngRow + 1
    Next
    
End Sub

Gruß Sepp
Anzeige
AW: kleinster / grösster Wert abfragen u. Tab. erstell
16.01.2007 23:39:05
Peter
Hallo Sepp
Das hat so tipp top funktioniert.
Vielen Dank!
Peter
AW: kleinster / grösster Wert abfragen u. Tab. ers
16.01.2007 23:25:11
Erich
Hallo Peter,
oder so (bei großen Tabellen wohl recht schnell): Option Explicit Sub Tage_Min_Max() Dim lngMin As Long, lngMax As Long, arr, zz As Long lngMin = Evaluate(Application.Min([xDatum])) lngMax = Evaluate(Application.Max([xDatum])) ReDim arr(lngMin To lngMax, 0) For zz = lngMin To lngMax arr(zz, 0) = zz Next zz Range(Cells(7, 1), Cells(7 + lngMax - lngMin, 1)) = arr ReDim arr(0) End Sub Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Tage zwischen Min+Max eintragen - Korrektur
16.01.2007 23:32:22
Erich
Hallo nochmal,
das Evaluate() war Quatsch (hab ich grad auch bei Sepp ohne gesehen), also kürzer
Application.Min([xDatum])
statt
Evaluate(Application.Min([xDatum]))
Bei Max natürlich analog. Sorry!
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Tage zwischen Min+Max eintragen - Korrektur
16.01.2007 23:41:57
Peter
Hallo Erich
Vielen Dank für die Rückmeldung. Es ist immer wieder beeindruckend, was es alles gibt.
Da ich die Codes auch verstehen möchte, wäre es nett, wenn du mir die nachfolgenden Zeilen deines Codes (gelegentlich) kurz erläutern könntest. Das ist natürlich lediglich ein Wunsch, meine Problemstellung ist gelöst.
Besten Dank, Peter
ReDim arr(lngMin To lngMax, 0)
For zz = lngMin To lngMax
arr(zz, 0) = zz
Next zz
AW: Tage zwischen Min+Max eintragen
17.01.2007 00:06:30
Erich
Hallo Peter,
arr wird mit Dim zunächst ohne Typangabe (und damit als Variant) angelegt.
"ReDim arr(lngMin To lngMax, 0)" macht daraus ein Array (Datenfeld),
mit Platz für die Werte von arr(lngMin,0) bis arr(lngMax,0).
In meinem Beispiel ist arrMin=39079 (für den 28.12.06), arrMax=39091 (für den 09.01.07).
Durch die Schleife
For zz = lngMin To lngMax
arr(zz, 0) = zz
Next zz
wird das Array mit Werten gefüllt:
arr(37079, 0) = 37079
usw. bis
arr(37091, 0) = 37091
Es enthält jetzt die 13 gewünschten Datumse als ganze Zahlen.
Mit "Range(Cells(7, 1), Cells(7 + lngMax - lngMin, 1)) = arr" werden sie dann in einem Rutsch
in den dafür benötigten Bereich der Tabelle geschrieben.
Man könnte - wie in Sepps Code - die Werte in der Schleife einzeln direkt in die Tabelle schreiben,
das Zwischenlagern in dem Array ist also ein Umweg. Ich gehe aber (hier ungeprüft) davon aus,
dass das mit dem Array schneller läuft.
Noch eine Bemerkung zu dem ",0" in "ReDim arr(lngMin To lngMax, 0)" und "arr(zz, 0) = zz":
Der Bereich, in den am Ende geschrieben wird, hat zwei Dimensionen - Zeilen und Spalten (hier speziell nur 1 Spalte).
Deshalb hat auch das Array zwei Dimensionen. zz steht für Zeilen, die 0 für die eine Spalte.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Tage zwischen Min+Max eintragen
17.01.2007 17:04:14
Peter
Hallo Erich
Besten Dank für die illustrative Erläuterung.
Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige