Ich habe (mal wieder) so eine Tabelle mit einer Zinsstaffel. In Spalte B steht immer die Valuta oder eben das Buchungsdatum.
Ich hab mir bereits in VBA einen Makro gebastet, der mir diese Tabelle auf Basis von Variablen (Ratenhöhe usw.) automatisch aufbaut (Zeile für Zeile bis Saldo 0). Nun ist mir der Gedanke gekommen, dass es ja auch möglich sein müsste, diese Tabelle relativ einfach später zu verändern. Beispielsweise, wenn sich die Ratenhöhe nach einigen Jahren ändert. Zu Beginn ist die Tabelle ja "leer" (natürlich bis auf die berechnenden Felder). Nachdem der Makro die Tabelle aufgebaut hat, setzt er am Schluß ein Kennzeichen, aus dem nun hervorgeht, dass der Makro schon einmal gelaufen ist.
Bei einem erneuten Start soll deshalb eine Inputbox kommen, in der man das Datum eingeben kann, ab dem sich die Tabelle ändern soll.
Beispiel: Meine Tabelle geht vom 01.01.2010 bis 31.12.2030. Abwechselnd kommt immer zuerst der Zinsabschluß und danach die Ratenzahlung. Jetzt soll die Rate sich nachträglich ab sagen wir mal 01.01.2015 ändern. Dann will ich einfach ins Feld Rate, den neuen Betrag eingeben (das geht jetzt schon). Nun den Makro starten, es öffnet sich die Inputbox, in der ich dann den 31.12.2014 (Raten sind immer zum Ultimo enthalten) eingeben. Jetzt soll in der Tabelle nach dem letzten Vorkommen des 31.12.2014 gesucht werden und die Zelle als Ergebnis zurückgeliefert werden. Der bisherige Makro läuft ab das ganz genau wie vorher ab, nur dass eben nicht mehr am Anfang der Tabelle sondern am 31.12.2014 (bzw. der Zeile darunter) beginnt. Alles davorliegende bleibt unverändert.
Kann mir jemand den Code mitteilen, der für diese Abfrage notwendig ist. Die Inputbox selbst hab ich bereits. Die Eingabe dort steht in der zugehörigen Variablen mit "TT.MM.JJJJ", also in Anführungszeichen.
Hier der Code, den ich versucht habe:
Range("B15:B2000").Find(what:=(Wert1), after:=Range("B2000"), searchdirection:=xlPrevious).Select
Kommt Laufzeitfehler '91'
Danke im Voraus für einen Tipp.