Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dateiöffnung zählen

Forumthread: Dateiöffnung zählen

Dateiöffnung zählen
05.11.2005 10:33:07
sammy
Hallo Zusammen,
ich würde gerne ein Makro oder ähnliches haben, welches man leicht an eine Exceldatei anhängen oder einbauen kann und zählt wie oft die Datei geöffnet wurde. Wenn's das gleiche für Worddokumente gibt wär das natürlich ideal.
z.B. ich öffne die Datei und ein Fenster popt auf: Die Datei wurde bereits x-Mal geöffnet.
Hat das jemand zufällig parat?
LG
Sammy
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateiöffnung zählen
05.11.2005 11:16:38
sammy
Hallo Thomas,
hatte ich auch gefunden. Trifft nicht ganz meine Bedürfnisse. Auch beim anschauen sollte das gezählt werden und dann sollte das noch möglichst ohne VBA einzubauen sein.
LG
Sammy
Anzeige
AW: Dateiöffnung zählen
05.11.2005 11:17:27
Matthias
Hi Sammy,
ohne VBA geht das aber nicht!
GRuß Matthias
AW: Dateiöffnung zählen
05.11.2005 11:22:28
sammy
Hi Matthias,
ok wenns nicht ohne VBA geht... aber ich kann doch später ein ADDin erstellen. Und die Nutzer brauchen es nur noch importieren oder? Oder gibt es nocheine besser/einfachere Lösung das anzuhängen?
Gruß
Sammy
Anzeige
AW: Dateiöffnung zählen
05.11.2005 11:30:52
Matthias
Hi Sammy,
also als AddIn kann ich dir das nicht schreiben, da es mit Ereignissen zu tun hat und ich weiß nicht, wie man das mit einem AddIn löst.
Für eine einzelne Datei ginge das so:
In "DieseArbeitsmappe":

Private Sub Workbook_Open()
Const Ext = ".cnt" 'gewünschte File-Extension angeben
Dim fn As String, ff As Integer, Anzahl As Long
On Error GoTo errhandler
fn = WorksheetFunction.Substitute(ThisWorkbook.FullName, ".xls", Ext)
ff = FreeFile()
If Dir(fn) <> "" Then
Open fn For Input As #ff
Input #ff, Anzahl
Close #ff
Anzahl = Anzahl + 1
Else
Anzahl = 1
End If
Open fn For Output As #ff
Print #ff, Anzahl
Close #ff
MsgBox "Datei wurde " & Anzahl & " mal geöffnet!"
Exit Sub
errhandler:
MsgBox "Fehler beim Auslesen/Erhöhen das Zählers!"
End Sub

Das Makro erzeugt eine Datei im Ordner der Mappe mit der Endung .cnt (Kannst du in der ersten Zeile ändern). In dieser wird die Zahl der Öffnungen gespeichert. Wird die Datei gelöscht, ist der Zähler wieder bei Null.
Gruß Matthias
Anzeige
AW: Dateiöffnung zählen
sammy
Hallo Matthias,
mmmhh leider keine Befriedigende Lösung.
Ich glaube ich habe da ein komplizierteres Problem. Die Dateien liegen auf dem Server und werden vom unterschiedlichen Leuten runtergeladen, geöffnet, geändert oder manchmal auch nicht und auch wieder raufgeladen... ich möchte das irgendwie dokumentiert haben und eine Zählung erfüllt das dann doch nicht.
Sorry das ich mich am Anfang nicht so erklärt habe. Hast du eine Idee wie man das lösen kann?
LG
Sammy
Anzeige
AW: Dateiöffnung zählen
05.11.2005 12:42:39
Alex
Hallo,
dafür ist eigentlich das Betriebssystem zuständig.
Also Admin fragen oder selbst eine Datei- Überwachung
auf dem Server einrichten.
Als Server-unabhängige Alternative käme evtl. eine
Verschlüsselung der Datei durch ein extrenes Programm (PGP?)
in Frage.
AW: Dateiöffnung zählen
05.11.2005 14:22:30
sammyabushab
Hi Alex,
ist wohl doch nicht so einfach wie ich dachte. Danke für die Info aber leider kann ich das wohl nicht realisieren.
LG
Sammy
Anzeige
AW: Dateiöffnung zählen
05.11.2005 11:06:21
Matthias
Hi Sammy,
Ich sehe da drei Möglichkeiten:
1. In der Registrierung speichern
Vorteil: geht schnell
Nachteil: gilt nur für den aktuellen Benutzer
2.In der Mappe speichern
Vorteil: gilt für alle Benutzer, die die Mappe öffnen
Nachteil: sehr langsam, Mappe muss nach dem Öffnen gleich wieder gespeichert werden
3. In einer Textdatei speichern
Vorteil: relativ schnell
Nachteil: Kann vom Benutzer durch maipulation der Textdatei leicht geändert werden
Was bevorzugst du?
Gruß Matthias
Anzeige
AW: Dateiöffnung zählen
05.11.2005 11:13:38
sammyabushab
Hallo Matthias,
Lösung 3 ohne Nachteil wenn ich die Wahl habe. Wie leicht ist das zu manipulieren? Diejenigen die das öffnen, sind alle keine Cracks. Wichtig wäre das man es schnell und unkomplieziert einbauen kann, am besten in ein oder zwei Schritten. Sonst wird das nicht genutzt!
LG
Sammy
Anzeige
;
Anzeige

Infobox / Tutorial

Dateiöffnung zählen in Excel


Schritt-für-Schritt-Anleitung

Um zu zählen, wie oft eine Excel-Datei geöffnet wurde, kannst du ein einfaches VBA-Makro verwenden. Hier sind die Schritte, um das Makro in deine Excel-Datei einzufügen:

  1. Öffne deine Excel-Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu starten.
  3. Doppelklicke im Projekt-Explorer auf DieseArbeitsmappe der gewünschten Arbeitsmappe.
  4. Füge den folgenden VBA-Code ein:
Private Sub Workbook_Open()
    Const Ext = ".cnt" 'gewünschte File-Extension angeben
    Dim fn As String, ff As Integer, Anzahl As Long
    On Error GoTo errhandler
    fn = WorksheetFunction.Substitute(ThisWorkbook.FullName, ".xls", Ext)
    ff = FreeFile()
    If Dir(fn) <> "" Then
        Open fn For Input As #ff
        Input #ff, Anzahl
        Close #ff
        Anzahl = Anzahl + 1
    Else
        Anzahl = 1
    End If
    Open fn For Output As #ff
    Print #ff, Anzahl
    Close #ff
    MsgBox "Datei wurde " & Anzahl & " mal geöffnet!"
    Exit Sub
errhandler:
    MsgBox "Fehler beim Auslesen/Erhöhen des Zählers!"
End Sub
  1. Schließe den VBA-Editor und speichere die Arbeitsmappe als Makro-fähige Datei (z.B. .xlsm).

Mit diesem Makro wird jedes Mal, wenn die Datei geöffnet wird, eine Zählung in einer .cnt-Datei im gleichen Ordner gespeichert.


Häufige Fehler und Lösungen

  1. Fehlermeldung beim Auslesen des Zählers:

    • Überprüfe, ob die .cnt-Datei im gleichen Verzeichnis wie die Excel-Datei vorhanden ist. Falls nicht, wird sie beim ersten Öffnen erstellt.
  2. Makro funktioniert nicht:

    • Stelle sicher, dass du die Datei im richtigen Format (z.B. .xlsm) gespeichert hast und dass die Makros in deinen Excel-Einstellungen aktiviert sind.

Alternative Methoden

Falls du keine VBA-Lösung verwenden möchtest, gibt es alternative Ansätze:

  • Verwendung der Registrierung: Du kannst die Anzahl der Dateiöffnungen in der Windows-Registrierung speichern. Diese Methode ist jedoch nur für den aktuellen Benutzer gültig und eignet sich nicht für mehrere Nutzer.

  • Serverüberwachung: Eine serverseitige Überwachung könnte helfen, die Dateiöffnungen zu zählen, erfordert jedoch administrative Zugriffsrechte.


Praktische Beispiele

Hier ist ein Beispiel für den VBA-Code, der die Dateiöffnungen zählt:

Private Sub Workbook_Open()
    ' Zähle, wie oft die Datei geöffnet wurde
    ' ...
End Sub

Ersetze den Kommentar mit dem oben genannten Code. Diese Methode ist besonders nützlich, wenn du die Anzahl der Öffnungen für Dokumentationen oder Analysen benötigst.


Tipps für Profis

  • Kaufmännisch runden auf 5 Rappen: Wenn du Excel für finanzielle Berechnungen verwendest, kannst du auch Funktionen wie KGRUNDEN nutzen, um Werte kaufmännisch zu runden. Dies ist besonders nützlich, wenn du mit Währungen arbeitest.

  • Schnelle Implementierung: Wenn du häufig solche Zähler benötigst, ziehe in Betracht, ein Add-In zu erstellen, das du einfach in verschiedenen Projekten verwenden kannst.


FAQ: Häufige Fragen

1. Kann ich die Zählung auch ohne VBA durchführen?
Leider ist dies nicht möglich. Um die Öffnungen zu zählen, benötigst du ein Makro oder eine serverseitige Lösung.

2. Was passiert, wenn die .cnt-Datei gelöscht wird?
Die Zählung wird zurückgesetzt, und beim nächsten Öffnen wird die Zählung auf 1 gesetzt.

3. Ist diese Methode für alle Excel-Versionen geeignet?
Ja, das Makro sollte in den meisten modernen Excel-Versionen funktionieren, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige