PDA

Vollständige Version anzeigen : Überlauf bei Datumsvergleich


Meik123
01.10.2007, 05:37
Hi,
Also ich habe eine Tabelle wo verschiedene Daten eingetragen werden.

z.B.
Datum Aktion
01.10.2007 Müll runtergebracht
01.10.2007 Wohnung Gesaugt
02.10.2007 Auto gewaschen

Auf der Rechten seite ist eine Tabelle wo steht wie viele sachen ich an einem Tag gemacht habe, das sieht dann so aus

Datum Anzahl
01.10.2007 2
02.10.2007 1

Desweiteren zum besseren Verstehen,

Ich habe eine Userform wo ich das Datum und die Aktion eintrage, da ich nicht immer am selben Tag das eintrage. Das sieht dann im Code so aus,

Dim y As Integer
Do Until Cells(y, 1) = ""
y = y + 1
Loop
Cells(y, 1) = Textbox1.Text
Cells(y, 2) = Textbox2.Text

Jetzt entsteht das Problem, ich habe die Zählung automatisiert mit diesem Code:

Dim var1 As Integer
Dim var2 As Integer
var1=3


Do Until Cells(var1, 1) = ""
var2=3
Do Until Cells(var2, 9) = Cells(var1, 1)
var2 = var2 + 1
Loop
Cells(var2, 10) = Cells(var2, 10) + 1
Loop

Bei var2 = var2 + 1 entsteht nur der Überlauf, zeigt er mir wenn ich auf debuggen klicke zumindestens an.


wenn ich den eingabe Code so schreibe:
Dim y As Integer
Do Until Cells(y, 1) = ""
y = y + 1
Loop
Cells(y, 1) = Date
Cells(y, 2) = Textbox2.Text

dann bekomme ich keinen Überlauf.

Habe auch schon
Cells(y, 1) = Textbox1.Value
ausprobiert, ebenfalls überlauf.


Ich hoffe das reicht für eine Fehlerdiagnose, achja... ich habe auch schon das Datum in verschiedenen Formen eingegeben.


Schonmal danke im vorraus

MfG
Meik

jinx
01.10.2007, 06:12
<font size="2" face="Century Gothic">Moin, Meik123,

ich würde auf die Schleifen verzichten und die erste freie Zelle wie folgt auslesen:

lngFirstFree = Cells(Rows.Count, 1).End(xlUp).Row + 1
Und für das Zusammenfassen gibt es die Tabellenfunktion ZÄHLENWENN, die in VBA COUNTIF heißt und per WorksheetFunction.CountIf(DeinBereich, DeinKriterium) eingesetzt wird...</font>

Meik123
01.10.2007, 06:25
Danke für die Schnelle Antwort, ich hoffe das ich das hinkriege

Meik123
01.10.2007, 06:42
hmm... Das klappt glaube ich nicht, da das zählen ja nicht so das problem ist sondern das zuweisen der "Anzahl der Tätigkeiten" auf ein Datum in der Rechten Tabelle, da tritt ja der Überlauf auf wenn ich die Datumsangaben in der Rechten liste mit der Aktuellen CursorPosition auf Cells(y,1) vergleiche.


aber trotzdem danke für deine bemühungen.