Vielen Dank
W. Völkel
<<<
Ich möchte in einer Tabelle zum aktuellen Datum gelnagen.
Ich habe dies über ein Makro versucht. Eine Zelle
beinhaltet =heute(), was mir das aktuelle Datum
liefert.Ich zhabe nun versucht folgendes Makro zu
erstellen:
Makro aufnehmen: Aktuelles Datum in Suchen kopiert und
suchen. Cursor springt zum Datum in der Tabelle. - So soll
es sein - Suchen schließen und Makro beenden.
Wenn ich das Makro jetzt aufrufe, bekomme ich eine
Fehlermeldung...
>>>
VBA ist in engl. Sprache. Ersetzte das "Heute" durch "Today",
dann sollte es funktionieren.
Sub test1()
Cells.Find(What:="=TODAY()", _
LookIn:=xlFormulas).Activate
End Sub
--
Es liebs Grüessli
Monika Weber [Microsoft MVP für Excel]
http://www.jumper.ch (Office Help Desk)
http://excel.codebooks.de (Das Excel-VBA Codebook)
Danke!
Wolfgang
>-----Originalnachricht-----
>.
>
hast Du den untenstehenden Code, den ich Dir hier
geschickt habe, ausprobiert? Wenn nicht, dann schick
hier mal Deine Codezeilen.
Mit welcher Excel-Version arbeitest Du? Ich arbeite
mit Excel XP (also 2002). Der Code funktioniert
einwandfrei.
--
Es liebs Grüessli
Monika Weber [Microsoft MVP für Excel]
http://www.jumper.ch (Office Help Desk)
http://excel.codebooks.de (Das Excel-VBA Codebook)
"Wolfgang" <wvo...@gwdg.de> schrieb im Newsbeitrag
news:31ed01c37a19$be869d10$a601...@phx.gbl...
Ich arbeite mit Excel 2000.
Der Code:
Tastenkombination: Strg+j
'
Range("B3").Select
Selection.Copy
Range("D12").Select
Cells.Find(What:="13. Sep.", After:=ActiveCell,
LookIn:=xlValues, LookAt _
:=xlPart, SearchOrder:=xlByRows,
SearchDirection:=xlNext, MatchCase:= _
False).Activate
End Sub
Kannst Du damit etwas anfangen ?
Gruß
Wolfgang
>-----Originalnachricht-----
>.
>
Wolfgang
>-----Originalnachricht-----
>.
>
ja, damit kann ich schon einiges anfangen.
> Ich möchte in einer Tabelle zum aktuellen Datum gelnagen.
> Ich habe dies über ein Makro versucht. Eine Zelle
> beinhaltet =heute(),
> Range("B3").Select
> Selection.Copy
[...]
> Cells.Find(What:="13. Sep.",
Warum hast Du die Zelle B3 kopiert? Ich gehe davon
aus, dass dort das aktuelle Datum drin steht? Kopieren
funktioniert damit jedoch nicht, denn Du kopierst den
"13. Sep." Das ist zwar heute, aber morgen wird der
Inhalt nicht mehr stimmen.
> LookIn:=xlValues
Ausserdem "schaust" Du nach einem Wert (xlValues).
Es handelt sich bei "=Heute()" jedoch um eine Formel
(xlFormulas).
Ich bin mir nicht sicher, ob das Suchen nach Formeln in
der Version 2000 bereits möglich ist ... Drück mal die
Tastenkombination "Strg + F". Das Dialofenster "Suchen"
wird geöffnet.
Gib in der Zeile "Suchen nach:" die Formel "=Heute()" ein.
Unter XP ist in dem Dialogfenster ein DropDown-Feld
"Suchen in" verfügbar. Stelle dort den Wert auf "Formeln" um.
Wenn Du das Ganze aufzeichnest, erhältst Du in etwa diesen
Code:
Sub Makro1()
Cells.Find(What:="=Heute()", _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False, _
SearchFormat:=False).Activate
End Sub
Der Code hier kann unter Umständen von Deinem abweichen,
da Du eine andere Version verwendest als ich.
Wichtig jedoch ist, dass Du in der der ersten Codezeile
das "=Heute()" durch "=Today()" ersetzt, sonst kriegst
Du in VBA einen Sprachkonflikt.
Wenn das nicht funktioniert, dann könntest Du alternativ
auch etwas in der Art verwenden:
Sub test()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c.FormulaR1C1 = "=TODAY()" Then
c.Select
End If
Next c
End Sub
--
Es liebs Grüessli
Monika Weber [Microsoft MVP für Excel]
http://www.jumper.ch (Office Help Desk)
http://excel.codebooks.de (Das Excel-VBA Codebook)
"Wolfgang" <wvo...@gwdg.de> schrieb im Newsbeitrag
news:047c01c37a21$7ccf0f80$a001...@phx.gbl...
> Das Hallo Marion sollte natürlich Hallo Monika heißen!
Schon ok. Marion klingt auch ganz nett ;-)
"Wolfgang" schrieb:
>ich bekomme die Fehlermeldung: Laufzeitfehler "91"
>wenn ich das Makro "suche ein bestimmtes Datum" starte
wenn du die Zelle des heutigen Datums markieren willst, verwende folgende Prozedur:
If Not Cells.Find(Date, LookIn:=xlValue) Is Nothing Then _
Cells.Find(Date, LookIn:=xlValue).Activate
Wird keine Zelle gefunden, passiert gar nichts :-)
--
Mit freundlichen Grüßen
Melanie Breden
_____________________
[Microsoft MVP für Excel]
Jetzt funktioniert es !!!
Vielen DAnk für Deine Mühe und einen schönen Abend!
Wolfgang :-))
>-----Originalnachricht-----
>.
>
> Jetzt funktioniert es !!!
Danke für Dein Feedback.
> Vielen DAnk für Deine Mühe und einen schönen Abend!
Gern geschehen.
Es freut mich, wenn ich helfen konnte :-)
Leider habe ich mich zu früh gefreut...
Excel findet jetzt zwar das heutige Datum, aber auch nur
dort, wo die Zelle =heute() ist. Das was ich eigentlich
will, nämlich in meiner Kalendertabelle schnell zum
aktuellen Datum zu springen, gelingt nicht mit einem Makro.
Ohne Makro ist es kein Problem, ein eingegenbenes Datum zu
suchen. Über Makro bekomme ich das nicht hin.
Kann es wirklich sein, dass es in Excel 2000 nicht möglich
ist, mit einem Makro ein Datum zu finden ?
Vielleicht fällt Dir ja noch etwas ein.
Auf jedenfall bedanke ich mich nocheinmal für Deine Mühe.
Mit lieben Grüßen
Wolfgang
>-----Originalnachricht-----
>.
>
> Ich möchte in einer Tabelle zum aktuellen Datum gelnagen.
> Ich habe dies über ein Makro versucht. Eine Zelle
> beinhaltet =heute(),
um ehrlich zu sein, weiss ich nun echt nicht mehr, was Du
willst. Laut Deiner ersten Aussage hast Du nach einer
Prozedur gesucht, die eine Zelle findet, die =Heute()
beinhaltet (siehe oben).
Falls dies zutrifft, sollte mein Code funktionieren.
> Excel findet jetzt zwar das heutige Datum, aber auch nur
> dort, wo die Zelle =heute() ist. Das was ich eigentlich
> will, nämlich in meiner Kalendertabelle schnell zum
> aktuellen Datum zu springen, gelingt nicht mit einem Makro.
Wenn Du nun, wie neu beschrieben, nicht immer nach
einer Zelle suchst, die =Heute() beinhaltet, sondern einfach
das heutige Datum (egal wie), dann versuchst Du es am besten
mal mit der Lösung, die Dir Melanie geschickt hat.
--
Es liebs Grüessli
Monika Weber [Microsoft MVP für Excel]
http://www.jumper.ch (Office Help Desk)
http://excel.codebooks.de (Das Excel-VBA Codebook)
"Wolfgang" <wvo...@gwdg.de> schrieb im Newsbeitrag
news:02b801c37a41$f9682200$a101...@phx.gbl...
Vielen Dank für Eure Hilfe! Ich habe jetzt den (Denk)
Fehler gefunden. Als ich meine Kalendertabelle erstellte,
habe ich nur in A1 1. Jan. geschrieben und in B1 =A1+1. So
ist ist Tabelle entstanden. Für mich steht in Zelle B1
zwar 2. Jan., aber unter Suchen 2. Jan. konnte ich es
nicht finden, da in der Zelle ja nur =A1+1 steht. Wenn ich
in die Zelle per Hand 2. Jan. eingebe, dann findet es auch
das Makro.
Liebe Grüße
Wolfgang
>-----Originalnachricht-----
>.
>