amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > Frage zu Excel (WinXP). [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

06.12.2005, 12:59 Uhr

Falcon
Posts: 3544
Nutzer
Moin,

ich hab jetzt nicht unbedingt Lust und Muße, mich in zig Excel-Foren anzumleden, drum frag ich mal hier.

Ich möchte in eine Tabellenzelle das Datum von heute einfügen, wenn in der Nachbarzelle eine 1 steht.
Das ist soweit kein Problem, jedoch wird das Datum jeden Tag von Excel verändert, wenn ich die Funktion '=HEUTE()' benutze.

Wenn ich gestern eine '1' eingetragen habe, sollte da aber das Datum von gestern stehen bleiben.

Wie kann ich das bewerkstelligen ?

Danke und bis denn,

Falcon.
--
Che-Hoa Yuin sagt:
Der Amiga kann alles, was man zum Arbeiten braucht...
... was er nicht kann, braucht man auch nicht !!!!!!!

Meine Homepage: http://www.elasticimages.de

[ - Antworten - Zitieren - Direktlink - ]

06.12.2005, 13:40 Uhr

Micha1701
Posts: 938
Nutzer
Also ich denke, daß geht nicht. Man kann zwar die neuberechnung der Tabellenformeln unterbinden, aber dann würde sich ja gar nichts mehr neu berechnen.

Wenn ich Dich aber richtig verstanden habe, gibst Du die 1 nur ein um das Datum zu aktivieren. Dann kannste aber auch direkt das Datum eingeben...

--
:boing: Micha :boing:

Look at my HPs:
http://www.Silicon-Wizards.com

http://www.RealmsofPower.de.vu

[ - Antworten - Zitieren - Direktlink - ]

06.12.2005, 13:53 Uhr

Supimajo
Posts: 1265
Nutzer
Die Funktion =HEUTE() ist für deine Problemstellung ungeeignet. Diese
Funktion nimmt nur einen dynamischen Wert an, der sich logischerweise mit dem Datum ändert.

Da aktuelle Datum fügst du als statischen Wert per ShortCut STRG+:_ein.
Das ist die Funktion die du suchst.
Die läßt sich nicht per Formel mal einfach so einbinden, sondern das geht nur über VBA.

--
http://blog.mariomisic.de

[ - Antworten - Zitieren - Direktlink - ]

06.12.2005, 14:06 Uhr

hjoerg
Posts: 3854
Nutzer
@Falcon:

Vielleicht so etwas:
http://www.pctipp.ch/helpdesk/kummerkasten/archiv/office/25026.asp



~
Ansonsten könnte man sich hier durcharbeiten :D

a) http://www.teleunterricht.de/teleunterricht2/Materialien/Datenverarbeitung/DatumbeiExcel.pdf

DatumbeiExcel.pdf (application/pdf-Objekt)


b)
http://excelabc.de/excel/alt/alt.php?Seite=excel_tips_datum

Bert's Tipps und Tricks rund um Excel: alt: Excel Tipps Datum und Zeit
--
by WinUAE[/b]
hjörg :dance2:
Nethands
(Bild) http://hjoerg.kilu.de/amiga.hp/Page.html

[ - Antworten - Zitieren - Direktlink - ]

07.12.2005, 12:56 Uhr

Falcon
Posts: 3544
Nutzer
Hallöchen,

erstmal danke für die bisherige Hilfe, aber ich hatte etwas ENTSCHEIDENDES vergessen zu erwähnen:

Das Excel-Sheet MUSS (!) OHNE Macros auskommen, da diese in unserer Fa. deaktiviert sind (User-Rechte).

Ich habe jetzt mal etwas ausbaldovert, das aber (noch) nicht klappt (warum ?):

- Ich habe ein Kontrollkästchen (Haken), mit dem ich das Dateum ein- oder ausschalte (im Beispiel des 1. Threads die 0 oder 1).
- Wenn ich 'n Haken dran mache, soll das aktuelle Datum in eine Zelle eingetragen werden.
- Mache ich den Haken weg, wird die Zelle wieder gelöscht.
- Das Datum darf nicht jeden Tag automatisch wieder auf HEUTE() gesetzt werden.


Dazu folgende (Teil-) Lösung:

A1 ist die Zelle, in die das Datum eiungetragen werden soll.
Das Kontrollkästchen setzt B1 auf WAHR oder FALSCH (Haken dran oder nicht).

Bisher hatte ich als Formal in A1 stehen:
=WENN(B1=WAHR;HEUTE();'') <--- (die 'sollen Anführungszeichen sein).

Also wenn der Haken dran ist, dann trage in A1 das Datum von heute ein, sonst lösche die Zelle.

Das klappt insoweit, daß mir jeden Tag das neue Datum angezeigt wird und sich dieses durch löschen des Häkchens abschalten läßt.


Nun meine Idee, die ein mysteriöses Ergebnis liefert (Formel in A1):
=WENN(UND(A1='';B1=WAHR);HEUTE();'') <--- (' ist wieder das Anführungszeichen).

Nach meiner Auffassung sagt die Formel folgendes aus:
Wenn A1 keinen Text (das Datum) enthält und das Häkchen gesetzt wird, dann setze HEUTE() ein, andernfalls lösche die Zelle A1.

Das Ergebnis klappt, jedoich wird trotz korrekter Zellenformatierung immer als Datum 01.01.00 angezeigt ?!?!?!?

Da blick' ich nicht durch.
Entferne ich den (UND...)-Part, klappt's wieder, insofern daß das Datum von heute zumindest wieder angezeigt wird.

Wo mache ich da den Denkfehler ?

Danke,

Falcon.
--
Che-Hoa Yuin sagt:
Der Amiga kann alles, was man zum Arbeiten braucht...
... was er nicht kann, braucht man auch nicht !!!!!!!

Meine Homepage: http://www.elasticimages.de

[ - Antworten - Zitieren - Direktlink - ]

07.12.2005, 13:39 Uhr

hjoerg
Posts: 3854
Nutzer
@Falcon:

ZITAT der Anfrage(MS.Excel):

HJörg schrieb:

> Ich möchte in eine Tabellenzelle das Datum von heute einfügen, wenn in der Nachbarzelle eine 1 steht.
> Das ist soweit kein Problem, jedoch wird das Datum jeden Tag von Excel verändert, wenn ich die Funktion '=HEUTE()' benutze.
>
> Wenn ich gestern eine '1' eingetragen habe, sollte da aber das Datum von gestern stehen bleiben.



> -kein Marko möglich (admin/gesperrt)


dann hast du keine Chance :-(

Es gibt keine Formel, die das aktuelle Datum anzeigt und *einfriert*!

Dies Funktion HEUTE() zählt zu den flüchtigen Funktionen und werden
bei jeder Neuberechnung automatisch mit neuberechnet.

Eine einfache manuelle Möglichkeit das aktuelle Datum dauerhaft einzufügen
ist über die Tastenkombination 'Strg + . (Punkt)'.

--
Mit freundlichen Grüssen
Melanie Breden

--
- Microsoft MVP für Excel -
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned


Das Excel-VBA Codebook http://excel.codebooks.de


Excel-Auftragsprogrammierung

/ZITAT

--
by WinUAE[/b]
hjörg :dance2:
Nethands
(Bild) http://hjoerg.kilu.de/amiga.hp/Page.html


[ Dieser Beitrag wurde von hjoerg am 07.12.2005 um 13:40 Uhr editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

07.12.2005, 14:15 Uhr

Falcon
Posts: 3544
Nutzer
Hi HJoerg,

das ahnte ich wohl schon. Daher habe ich ja auch über meinen 'Trick' probiert, das Datum einzufrieren.
Es geht ja auch soweit, nur daß er mir als Datum bei der WEN(UND... Abfrage immer 01.01.00 als Datum ausgibt, was ich nun gar nicht kapiere.

Na ja, trotzdem erstmal danke.
Vllt. finde ich ja noch Haken und Ösen heraus, wie es doch machbar ist. Obwohl ich fst glaube....

Ciao,

Falcon.
--
Che-Hoa Yuin sagt:
Der Amiga kann alles, was man zum Arbeiten braucht...
... was er nicht kann, braucht man auch nicht !!!!!!!

Meine Homepage: http://www.elasticimages.de

[ - Antworten - Zitieren - Direktlink - ]

07.12.2005, 14:24 Uhr

hjoerg
Posts: 3854
Nutzer
@Falcon:

Zur Formel:

Zitat

HJörg:

> Folgende Formel(defekt=datum 01.01.00) wurde als Teillösung angeboten:
> =WENN(UND(A1=";B1=WAHR);HEUTE();")
>
> Das geht aber so nicht?


diese Formel kann zum einen nicht gehen, weil die " doppelt angegeben sein müssen.

=WENN(UND(A1="";B1=WAHR);HEUTE();"")

Noch einmal zum Verständnis:
Wenn diese Formel berechnet wird und beide Bedingungen (A1="";B1=WAHR)
erfüllt sind, wird die Funktion HEUTE() berechnet und zeigt das aktuelle Datum an.
Diese Funktion liefert aber jedesmal wenn sie berechnet wird das aktuelle Datum
der Systemzeit deines Computers.

Es müsste also möglich sein, die Berechnung für diese Zelle abzustellen, nachdem sie
das erste Mal ein Ergebnis geliefert hat.
Aber das ist mit den aktuellen Excel-Versionen auch unter VBA nicht möglich.

Mal sehen, was Excel 12 da evtl. an Neuerungen hervorbringt?


Mit freundlichen Grüssen
Melanie Breden

--
- Microsoft MVP für Excel -
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned


Das Excel-VBA Codebook http://excel.codebooks.de


Excel-Auftragsprogrammierung

/Zitat

(Mit den doppelten '' war nur ein Kopierfehler)


--
by WinUAE[/b]
hjörg :dance2:
Nethands
(Bild) http://hjoerg.kilu.de/amiga.hp/Page.html


[ Dieser Beitrag wurde von hjoerg am 07.12.2005 um 15:07 Uhr editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

08.12.2005, 11:20 Uhr

Falcon
Posts: 3544
Nutzer
Moin nochmal,

aber wieso schnallt es Excel nicht, wenn ich z.B. in C1 den Wert =HEUTE()
hinterlege und dann folgende Formel in A1 verwende:

=Wenn(UND(A1=WAHR;B1='');C1;'') ???

Also wörtlich:
Wenn A1 wahr ist und B1 leer, dann trage in A1 den Wert aus C1 ein.

Dieser Wert ist ja jeden Tag ein anderer. Durch die Übernahme innerhalb der WENN(UND... Abfrage, so dachte ich doch, wird der Wert kopiert und somit von der HEUTE()-Funktion 'losgelöst'.
Klappen tut's ja auch... Nur mit dem (neuen) Fehler, daß mir aobald cih die B1='' Abfrage einbaue, mir IMMER das Datum 01.01.01 geliefert wird.
Das muß doch ein Bug sein, denke ich mal so...

Ciao,

Falcon.
--
Che-Hoa Yuin sagt:
Der Amiga kann alles, was man zum Arbeiten braucht...
... was er nicht kann, braucht man auch nicht !!!!!!!

Meine Homepage: http://www.elasticimages.de

[ - Antworten - Zitieren - Direktlink - ]

08.12.2005, 12:05 Uhr

Gazelle
Posts: 151
Nutzer
@Falcon:

Also wenn ich deine Formel versuche, bekomme ich eine Fehlermeldung "Zirkelbezug". Man kann A1 anscheinend nicht in einer Formel für A1 verwenden.

[ - Antworten - Zitieren - Direktlink - ]

08.12.2005, 13:50 Uhr

Holger
Posts: 8116
Nutzer
Zitat:
Original von Falcon:

aber wieso schnallt es Excel nicht, wenn ich z.B. in C1 den Wert =HEUTE()
hinterlege und dann folgende Formel in A1 verwende:

=Wenn(UND(A1=WAHR;B1='');C1;'') ???

Also wörtlich:
Wenn A1 wahr ist und B1 leer, dann trage in A1 den Wert aus C1 ein.

Dieser Wert ist ja jeden Tag ein anderer. Durch die Übernahme innerhalb der WENN(UND... Abfrage, so dachte ich doch, wird der Wert kopiert und somit von der HEUTE()-Funktion 'losgelöst'.


Da steckt ein Denkfehler drin. Du gehst, wie auch bei der Zielstellung von einer Aktion aus, während Formeln aber eine Beziehung definieren. Aktionen werden zu einem bestimmten Zeitpunkt ausgelöst, Beziehungen bestehen aber zeitunabhängig.

Dabei spielt es keine Rolle, ob der Wert kopiert oder die Definition herangezogen wird. Deine Definition von C1=heute() meint immer das aktuelle Datum, und eine Zelle, die sich auf diesen Wert bezieht, ist erst dann aktuell, wenn sie das heutige Datum als Bezugspunkt benutzt.

Aus Sicht einer Tabellenkalkulation ist eine Zelle, die C1 referenziert, erst dann wirklich auf dem aktuellen Stand, wenn C1 auch auf dem aktuellen Stand ist, sprich, das heutige Datum enthält.

Für Deine Anforderung gibt es nur zwei mögliche Wege, das Problem zu lösen. a) über Skripting Aktionen definieren, die das gewünschte Datum eintragen oder b) sich auf ein Zellenattribut der Art "last modified" beziehen.
Ob es letztere in Excel gibt, weiß ich nicht. Wenn nicht, bleibt Dir nur Skripting (VB, etc.)

mfg

--
Good coders do not comment. What was hard to write should be hard to read too.

[ Dieser Beitrag wurde von Holger am 08.12.2005 um 13:51 Uhr editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

08.12.2005, 13:52 Uhr

Supimajo
Posts: 1265
Nutzer
Zitat:
Original von Falcon:

Also wörtlich:
Wenn A1 wahr ist und B1 leer, dann trage in A1 den Wert aus C1 ein.


Also ich hab deine Formel etwas abgewandelt zum laufen bekommen.
Trotzdem wird das Datum aber weiter täglich aktualisiert. :(

--
http://blog.mariomisic.de

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > Frage zu Excel (WinXP). [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.