Zugriffszähler

gvlms

Mitglied
Hallo!

Ich möchte in Excel ein Zugriffszähler einrichten. Er sollte wenn möglich die
Anzahl der Zugriffe und das Datum des letzten Zugriffes ausgeben.
Ich dachte da an so etwas:
In einem Feld steht anfangs die 0. Diese zahl wird eingelesen (durch Makro) durch einen Integer, um 1 erhöht und in dieses Feld wieder eingetragen. Beim nächsten Einlesen wird diese Zahl wieder erhöht, etc.
Allerdings weiß ich nicht, wie man das einliest.

ansonsten hab ich so programmiert, wie ich es aus java kannte (mit VBA habe ich noch nie vorher gearbeitet!):

Sub counter()

Dim counter As Integer

counter = EINLESEN!
counter = counter + 1

Range("A1").Select
ActiveCell.FormulaR1C1 = counter

End Sub
 
Hi,

also das sieht ja schon mal recht gut aus. Ich würde das ganze allerdings wie folgt lösen:
Code:
Sub counter()
  Range("A1").Value = Range("A1").Value + 1
End Sub

Gruß
Das Orakel
 
Moah, det ja richtig gut! :)

Und, haste auch ne Idee wegen dem letzten Zugriffsdatum?

ansonsten erstmal ein dickes Dankeschööön!

edit:
Noch ne Frage: Irgendwie zählt der nicht automatisch, wenn ich die Datei neu öffne. Muss der Makro irgendwie an eine Bestimmte Stellen (z.b. unter "dieseArbeismappe")? Wenn ja, dann muss ich ja noch angeben, dass er es meinetwegen ins Tabellenblatt 1 ("Tabelle1") schreiben soll. :(
 
Zuletzt bearbeitet:
Hi

In "Diese Arbeitsmappe" das Objekt "Workbook" und das Event "Activate"

Zugriffsdatum muss ich erst ma passen. Würde im obigen Event einfach das Datum in eine Zelle schreiben.

Gruß
Das Orakel
 
Orakel hat gesagt.:
In "Diese Arbeitsmappe" das Objekt "Workbook" und das Event "Activate"
mh...

Ich hab in "DieseArbeitsmappe" geschrieben:
Workbook("Tabelle1").Activate

und in "Tabelle1" hab ich den Sub counter() gemacht. aber nicht. Oder sind die Befehle flasch? Ich weiß nicht recht, was du meinst... :(
 
Hi
Packe doch einfach diesen Code

Code:
Private Sub Workbook_Open()
    Range("A1").Value = Range("A1").Value + 1
    Range("B1").Value = Date
    Range("C1").Value = Time
End Sub
In das "DieseArbeitsmappe" Objekt

Gruß
Das Orakel
 
Oh mir ist noch was eingefallen:

Kann ich nicht das alte Datum erlesen, bevor ich es mit
Range("B1").Value = Date
wieder überschreibe?

Aber wie gesagt, das mit dem "Einlesen" scheint ein Problem zu werden, oder?

Edit: Es gibt noch einweiteres Problemchen... Das mit dem Counter geht ja nur, für das Registerblatt, welches am Anfang geöffnet wird. Aber es wäre besser, wenn eine bestimmt Seite aufgerufen wird und man das alles dort reinschreibt...
 
Zuletzt bearbeitet:
Das mit dem letzten Datum hab ich gerade gelöst:
Private Sub Workbook_Open()

Dim datum_alt As Date

datum_alt = Range("B1").Value

Range("A1").Value = Range("A1").Value + 1
Range("B1").Value = Date
Range("C1").Value = Time
Range("B2").Value = datum_alt

End Sub

Was ich genau vor habe? Na wir haben da so ein (doofes) Info-Projekt, und ich wollte ein Registerblatt "Druckblatt" anlegen. Da soll halt das ganze rein.
 
Zurück