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

VBA Anfänger Problem (Fortlaufende Schleife)

VBA Anfänger Problem (Fortlaufende Schleife)
11.07.2005 10:51:42
pascal_h
Liebe ForumsbesucherInnen,
Ich möchte eine anscheinend simple Berechnung mit VBA durchführen, komme aber nicht weiter.
Ausgangslage: Habe in Spalte B eine fortlaufende Zeitreihe (Format z.B.: 12.02.2000 15:12:03). In A1 steht die Zeit 00:10:00 als Interval.
Ziel: Nun möchte ich, dass mir VBA den 2. Wert der Zeitreihe nimmt, und diesen vom 1. Wert subtrahiert. Wenn das Resultat aus dieser Berechnung kleiner sein sollte als das Interval, dann soll es den 3. Wert nehmen und diesen wiederum vom 1. subtrahieren und sofort. Falls das Interval erreicht oder überschritten werden sollte, soll mir VBA den letzten verwendeten Wert rechts neben den 1. Wert in Spalte C schreiben.
Und jetzt gehts weiter: Nun macht er das gleiche Spiel mit dem 2. Wert... Am Schluss habe ich also in Spalte C den letzten Wert (Zeitangabe), bei welchem das Interval nicht überschritten wird.
Ich hoffe ich konnte das ganze einigermassen verständlich erklären und hoffe weiter auf eure Hilfe! Ich bin blutiger VBA Anfänger und komme nicht weiter. Es müsste irgendwie mit einer while.. wend Schleife gehen, weiss aber nicht wie.
Ich Danke schon jetzt für eure Hilfe!
mfg Pascal

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Anfänger Problem (Fortlaufende Schleife)
11.07.2005 11:05:58
Reinhard
Hallo Pascal,
ich habe jetzt deine Anfrage 2mal gelesen und verstehe sie nicht. Kannst du mal eine kleine Beispieldatei hochladen wo man die Struktur sieht die du haben willst und wo alle drei Zustände drin sind, also dieser Subtraktionswert kleiner, gleich und größer dem Intervall ist.
Gruß
Reinhard
AW: VBA Anfänger Problem (Fortlaufende Schleife)
11.07.2005 11:56:10
pascal_h
Hallo Reinhard,
Irgendwie verhindert unser Server den Upload meines Files. Ich versuche hier das ganze nochmals zu veranschaulichen:
Spalte A______________Spalte B_____________Spalte C_____________
00:10:00______________30.09.1998 16:45:28__00.01.1900 04:48:00
02___________________01.10.1998 06:35:20__30.09.1998 16:45:28
03___________________01.10.1998 18:58:55__01.10.1998 06:35:20
04___________________01.10.1998 19:01:27__01.10.1998 19:08:48 Hier unser Beispiel
05___________________01.10.1998 19:01:35__01.10.1998 19:11:17
06___________________01.10.1998 19:01:43__01.10.1998 19:11:17
07___________________01.10.1998 19:03:51__01.10.1998 19:11:17
08___________________01.10.1998 19:03:58
09___________________01.10.1998 19:07:27
10___________________01.10.1998 19:08:22
11___________________01.10.1998 19:08:30
12___________________01.10.1998 19:08:38
13___________________01.10.1998 19:08:48
14___________________01.10.1998 19:09:31
15___________________01.10.1998 19:09:38
16___________________01.10.1998 19:09:45
17___________________01.10.1998 19:10:19
18___________________01.10.1998 19:10:26
19___________________01.10.1998 19:10:36
20___________________01.10.1998 19:11:08
21___________________01.10.1998 19:11:17
22___________________01.10.1998 19:11:56
Biespiel:
01.10.1998 19:01:35 (Zeile 5; Endzeit) - 01.10.1998 19:01:27 (Zeile 4, Startzeit) = 00.01.1900 00:02:32
Das Intervall von 10 Minuten wurde noch nicht überschritten... also:
01.10.1998 19:01:43 (Zeile 6; Endzeit) - 01.10.1998 19:01:27 (Startzeit) = 00.01.1900 00:02:40
Das Intervall von 10 Minuten wurde noch nicht überschritten... also weiter... bis:
01.10.1998 19:09:31 (Zeile 14; Endzeit) - 01.10.1998 19:01:27 (Startzeit) = 00.01.1900 00:10:36
HALT, das Interval von 10 Minten wurde übrschritten, ich nehme jetzt den letzten Wert, wo dies noch nicht der Fall war (Zeile 13 und setzte ihn neben die Startzeit in Spalte C.
Jetzt geh ich weiter zur nächsten Startzeit (01.10.1998 19:01:35, Zeile 5) und mache das selbe Spiel.
Ich hoffe Du verstehst jetzt was ich meine.
mfg Pascal
Anzeige
AW: VBA Anfänger Problem (Fortlaufende Schleife)
11.07.2005 12:03:57
pascal_h
Habe gerade gesehen, dass die ersten Beispiele in Spalte C nicht stimmen, aber unser Beispiel schon. Bitte nicht verwirren lassen, das ist ein Fehler. Sorry.
Es lebt... ABER..
11.07.2005 14:15:34
pascal_h
Hallo Allerseits, also habe das obengenannte Problem angepackt und bisher folgenden Script erstellt:

Sub Niederschlagsintensität()
Dim Interval As Integer
Interval = Range("A1")
StartZeit = Range("B1")
While ActiveCell <> ""
ActiveCell.Offset(1, 0).Select
If ActiveCell.Value - StartZeit > Interval Then
ActiveCell.Copy [C1]   ?
StartZeit = Range (?)
End If
Wend
MsgBox "Der Wert wurde nicht gefunden."
End Sub

Problem bzw. Frage:
1. Wie kann ich sagen, dass nun die Variable Startzeit um eine Zelle nach unten verschoben werden soll, nachdem das ganze gefunden wurde (siehe Fragezeichen).
2. Die zelle die kopiert wird, liegt eine zelle zu weit unten, wie kann ich sagen, dass er mir eine zelle davor nehmen soll?
3. Ich muss die startzelle jeweils "von hand" "activieren" (markieren). Wie kann ich das automatisieren? Also: geh zu D4, und starte von dort die prozedur.
Ich danke für eure Hilfe!
mfg Pascal
Anzeige

315 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige