Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Counter funktioniert nicht
23.10.2013 12:06:54 Dörk
Solved

Ansicht des Beitrags:
Von:
Dörk
Datum:
23.10.2013 12:06:54
Views:
1264
Rating: Antwort:
 Nein
Thema:
VBA Counter funktioniert nicht

Hallo Leute!

 

Ich bin dabei eine Makrosammlung zu schreiben. Vereinfacht gesagt, sind 3 Userforms enthalten, zwischen denen man in einem Auswahlmenü wählen kann. Ich möchte einen Counter haben, der pro Userform die Zugriffe mitzählt.

 

Problemstellung:

Greift ein User auf meine XSLM-Datei zu, dann bekommt jeder weitere User die Nachricht, dass die Datei bereits in Verwendung ist. Daher habe ich so programmiert, dass NACH dem Auswählen der Userform eine Datei mit dem Namen des Workbooks auf dem Desktop landet (Temporäre Kopie des tages-aktuellen Originals).

Mein Counter zählt allerdings falsch. ich poste mal den Code und hoffe darauf, dass ihr mich erleuchtet:

 

Private Sub Image1_Click() ' ein Firmen-Logo
Splashscreen.Hide ' = Userform mit der Auswahl der Firma 
Userform1.Show vbModeless 'Anzeigen der UF für Firma 1
Cells(1000, 1).value = Cells(1000, 1).value + 1 'Counter für Firma1 plus 1
'MsgBox "Nach Counter" 'zum debuggen
ActiveWorkbook.Save ' Counterstand zur Originaldatei hinzufügen, damit bei jedem User der gleiche Counter läuft
'MsgBox "nach speichern" 'zum debuggen
Dim strPfad As String
bookName = ActiveWorkbook.name
Application.DisplayAlerts = False 
'MsgBox "vor speichern Desktop" 'zum debuggen
'=== Speichert eine Sicherheitskopie auf den Desktop
        strPfad = Environ("UserProfile") & "\Desktop\"
ActiveWorkbook.SaveAs fileName:=strPfad & bookName, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
'=======
'MsgBox "saved to desktop" 'zum debuggen
Application.DisplayAlerts = True 

End Sub

Nun SOLLTE die Zelle A1000 (Counter_Userform1) eine Zahl x enthalten, die um 1 größer ist, als zuvor.

Nun rufe ich über einen Butten in der Userform die Anzahl auf und bekomme die Zahl x + 2!

Private Sub Counter_Click()
Dim Counter As Integer
Counter = Cells(1000, 1)
MsgBox "Die Datei hatte bis jetzt " & Counter & " Aufrufe."
End Sub

Wird durch das speichern ggf. kurzzeitig die UF neu geöffnet und die Zahl wird wiederholt dazuaddiert?

Könnt ihr mir sagen, wie ich (unbedingt unsichtbar für den user!) die Zahlen auch einfach bei Aufruf der Userform an eine Datei "Statistiken.XLSX" in die Zellen A1, A2, A3 bekomme? Ich habe dazu lange gesucht, aber nie das richtige gefunden :/ Damit könnte ich nämlich das Doppelte Speichern der Datei vermeiden und so ggf. die Doppelzählungen des Counters.

Vielen Dank für euren Support!

Dörk

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Counter funktioniert nicht
23.10.2013 12:06:54 Dörk
Solved