Trainingsplaner und -Log Anwendung

Trainingslogs

Trainingsplaner und -Log Anwendung

Beitragvon Tomcat » 26 Okt 2012, 13:20

Der Artikel ist in unsere Bibliothek (unter Downloads) verschoben worden.
Wer etwas will, findet Wege. Wer etwas nicht will, findet GrĂĽnde.
Benutzeravatar
Tomcat
 
Beiträge: 1981
Registriert: 24 Okt 2012, 19:20
Wohnort: Flensburg

Re: Trainingsplaner und -Log Anwendung

Beitragvon Tomcat » 21 Nov 2012, 21:48

In den frĂĽher heruntergeladenen Versionen der Anwendung zeigt der Link zum Download der Anwendung auf den entsprechenden Thread bei hardgainer.de.

Wäre gut, wenn die Anwender (z.Zt. wohl nur h4rdg4iner) diesen Link ersetzen würden.
Der Link steht im Modul 1 des Basic-Codes. Zum Ersetzen des Links wie folgt vorgehen:

  • Anwendung öffnen
  • mit ALT-F11 Basic aufrufen
  • bei der Excel Version in der Navigation links unter "Module" Doppelklick auf "Modul1".
  • bei der Open Office Version im linken Fenster auf das "+" vor "Trainingsplaner_xxx.ods",
    dann auf das "+" vor "Standard",
    Modul1 anklicken und dann rechts auf "Bearbeiten" klicken und im Hauptfenster zunächst ganz nach oben scrollen
  • im Hauptfenster etwas nach unten scrollen. Kurz unterhalb der Versions-Historie steht die Konstanten-Zuweisung "Const DownloadLoc = ..."
  • den Link auf den hardgainer.de-Thread durch diesen ersetzen:
    Code: Alles auswählen
    http://hardgainer.info/content/?page_id=257
    Nur den Link zwischen den "" ersetzen, "Const ....." muss stehen bleiben.
  • Datei speichern
  • Basic schlieĂźen

Danke & GruĂź
JĂĽrgen
Wer etwas will, findet Wege. Wer etwas nicht will, findet GrĂĽnde.
Benutzeravatar
Tomcat
 
Beiträge: 1981
Registriert: 24 Okt 2012, 19:20
Wohnort: Flensburg

Re: Trainingsplaner und -Log Anwendung

Beitragvon h4rdg4iner » 22 Nov 2012, 00:00

Erledigt :)
Benutzeravatar
h4rdg4iner
 
Beiträge: 62
Registriert: 26 Okt 2012, 09:35

Re: Trainingsplaner und -Log Anwendung

Beitragvon Tomcat » 10 Jan 2013, 00:51

Trainingsplaner und 64Bit

Ein User hat mir gemeldet, dass bei Verwendung der Anwendung unter der 64Bit Version von Microsoft Office ein Fehler auftritt. Dieser bezieht sich auf die Deklaration von Windows API Funktionen (Windows Application Programming Interface). Davon habe ich in der Anwendung nur zwei verwendet, und zwar zur Tastaturabfrage und Soundausgabe in der Tabata Routine. Da der Fehler bereits beim Kompilieren des Codes (beim Start der Anwendung) auftritt, funktioniert dann nicht nur der Tabata Timer nicht, sondern es geht gar nichts mehr.

Ich habe herausgefunden, dass der Aufruf unter 64Bit-Systemen modifiziert werden muss (Einfügen des Attributs "PtrSafe" in den API-Aufruf) und habe den User gebeten, das für mich zu testen, da ich selbst keinen Zugriff auf 64 Bit Systeme habe. Nach seiner Aussage scheint es mit dem modifizierten Aufruf zu funktionieren. Ich habe jetzt eine Abfrage auf die verwendete VBA-Version definiert, die den Code sowohl für 32Bit als auch für 64Bit Systeme lauffähig machen sollte. Diese bedingte Deklaration wird in zukünftigen Versionen der Anwendung eingebaut, ich konnte das aber bisher nicht testen (außer dass es auf 32Bit so läuft).
Statt einer aktualisierten Version gibt es daher hier vorerst nur den geänderten Code und ich versuche mal im Bekanntenkreis jemand mit 64Bit Office zu finden, um das vernünftig zu testen.

Wer also ein 64Bit Office verwendet und eine Fehlermeldung bekommt, dass der Code fĂĽr 64 Bit Systeme aktualisiert werden muss, kann das selber austauschen (bitte Feedback an mich, ob's funktioniert).

Dazu den VBA Editor aufrufen (ALT-F11) und im Fenster links Modul2 durch Doppelklick auswählen.
Dann im Programmcode ziemlich am Anfang die Deklarationen der API-Aufrufe (mit Kommentaren 4 Zeilen) unterhalb von "Option Explicit" entfernen und durch den folgenden Code ersetzen (am Besten direkt durch Copy&Paste):

Code: Alles auswählen
' Soundausgabe- und Tastaturabfrage-Funktionen deklarieren
#If VBA7 Then
    ' Deklaration fĂĽr 64 Bit
    Private Declare PtrSafe Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
    Declare PtrSafe Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
#Else     
   ' Deklaration fĂĽr 32 Bit
    Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
    Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
#End If


Hinweis:
Da das PtrSafe-Attribut nicht bekannt ist, kommt es bei 32Bit Systemen bei Eingabe der 64Bit Deklaration zu Fehlermeldungen und die beiden Zeilen werden rot dargestellt.
Da diese Zeilen innerhalb einer "#If" Bedingung stehen (diese werden zum Kompilierungszeitpunkt aber nicht zur Laufzeit ausgewertet), sind diese Fehler aber zu ignorieren und sollten nicht zu Fehlern bei der Anwendung des Programms fĂĽhren.
Wer etwas will, findet Wege. Wer etwas nicht will, findet GrĂĽnde.
Benutzeravatar
Tomcat
 
Beiträge: 1981
Registriert: 24 Okt 2012, 19:20
Wohnort: Flensburg

Re: Trainingsplaner und -Log Anwendung

Beitragvon SebK » 11 Mär 2015, 00:32

Hi Tomcat,

ich wollte deinen Trainingsplaner (der ziemlich professionell aussieht :-bd ) unter Excel2013 ausprobieren und leider eine Fehlermeldung erhalten. Weisst du ob das mit Excel2013 eigentlich funktionieren sollte?

Ich habe die Datei im entpackten Ordner nicht verändert und nur testweise den "Trainingsplan erzeugen" Button benutzt. Die Fehlermeldung ist "Laufzeitfehler '13': Typen unverträglich".

Angehängt ein Screenshot vom Debug-Fenster. Ich kenne mich mit VBA nicht aus und kann daher nicht selbst auf Fehlersuche gehen.

GruĂź
SebK
Dateianhänge
2015-03-10_232801.jpg
2015-03-10_232801.jpg (113.15 KiB) 5824-mal betrachtet
SebK
 
Beiträge: 19
Registriert: 11 Jan 2015, 20:26

Re: Trainingsplaner und -Log Anwendung

Beitragvon Tomcat » 11 Mär 2015, 14:18

Hi Seb,

erstmal danke fĂĽr dein Feedback.

Ich habe selbst Excel 2007 (und ältere Versionen) und habe leider auch keinen Zugang zu einem Rechner mit Excel 2013.
Ich weiß auch nicht, was Microssoft an Excel/VBA geändert hat, kann mir aber nicht vorstellen, dass so gravierende Änderungen durchgeführt wurden, dass älterer Code nicht mehr läuft. Hab gerade nochmal die Datei runtergeladen und dann nur auf "Trainings-Zeitplan erzeugen" auf dem Blatt "Planung" geklickt - läuft.

Es erschließt sich mir auch nicht, wie es bei Betätigung des Buttons "Trainings-Zeitplan erzeugen" zu einem Laufzeitfehler in der Sub "Calculate_Progress" kommen kann, denn diese Prozedur (im Modul 1) wird bei der Erzeugung des Trainingsplans gar nicht aufgerufen. :-?? Für die Trainingsplan-Erzeugung ist die Sub "CreatePlan" im Modul 4 zuständig.

Die Sub-Prozedur "Calculate_Progress" ermittelt Veränderungen bei Arbeitsgewicht und Wiederholungen gegenüber der vorangegangenen TE und wird neben anderen Subs bei Auswahl der anzuzeigenden Trainingseinheit auf dem Blatt "LOG" über die up/down Buttons aufgerufen. Laufzeitfehler hinsichtlich unverträglicher Datentypen gehen dann normalerweise auf nicht numerische Eingaben (kann auch ein unsichtbares Leerzeichen sein) in den Gewichts- und Wiederholungsspalten auf dem Blatt "Trainingsplan" zurück. Die Eingaben sollten allerdings beim Verlassen des Blattes geprüft werden (sofern das Häkchen bei "Plan prüfen" gesetzt ist) und über eine Fehlermeldung abgefangen werden (z.B. "Fehlerhafte Eingabe der Wiederholungen " " Zeile 5, Übung Kniebeugen, 1. Satz").
Den beschriebenen Fehler kann man provozieren, wenn man das Häkchen "Plan prüfen" oben rechts auf dem Blatt "Trainingsplan" entfernt, dann z.B. in Zelle G5 ein Leerzeichen oder einen Buchstaben eingibt und dann auf dem Blatt "LOG" die entsprechende Trainingseinheit mmit der Falscheingabe auswählt. Dazu muss natürlich erstmal ein Trainingsplan da sein.

Weiß jetzt nicht wirklich, wie ich dir weiterhelfen kann. Vielleicht kann das mal jemand anders mit Excel 2013 ausprobieren und ggf. bestätigen. Dann müsste ich mir auch mal Excel 2013 anschaffen. Gibt ja auch kostenlose 60 Tage Probeversionen, für die man sich allerdings bei Microsoft registrieren muss.

GrĂĽĂźe
JĂĽrgen
Wer etwas will, findet Wege. Wer etwas nicht will, findet GrĂĽnde.
Benutzeravatar
Tomcat
 
Beiträge: 1981
Registriert: 24 Okt 2012, 19:20
Wohnort: Flensburg

Re: Trainingsplaner und -Log Anwendung

Beitragvon Tomcat » 29 Apr 2015, 19:03

Hallo,

hab gerade ein Update der Datei hochgeladen. Die meisten der Änderungen habe ich schon vor längerer Zeit in die von mir verwendete Version eingebaut und die Auswirkungen waren daher schon in meinem Log zu sehen. Habe das jetzt endlich mal vernünftig dokumentiert und auch die vor langer Zeit begonnene Anpassung der Anleitungen abgeschlossen.

Leider habe ich zu dem kürzlich von SebK berichteten Fehler kein weiteres Feedback (also auch keine weiteren Fehlermeldungen) erhalten, so dass ich diesbezüglich keine Änderungen in das Update einfliessen lassen konnte. Allerdings halte ich den Fehler, so wie er beschrieben wurde, auch für kaum möglich, da der Fehler in einer Prozedur auftrat, die mit der ausgeführten Programmfunktion nichts zu tun hat. Aber man hat ja schon Pferde ...

Neue Funktionen
  • Nachträgliche Ă„nderung der Ăśbungsreihenfolge möglich
    Neben der einmaligen Änderung der Übungsreihenfolge für die Foren-Log-Ausgabe ist jetzt auch eine dauerhafte Änderung durch Nummerierung der Übungen auf dem Blatt "Trainingsplan" möglich. Dies wirkt sich dann auf das Blatt "TP_Aktuell" und natürlich auch auf das Blatt "LOG" (Foren-Ausgabe) aus.
  • Verbesserte Funktionalität der Log-Erzeugung
    Bisher war die Erzeugung des BB-Codes für den Foren-Eintrag nur über Auswahl der TE auf dem Blatt "LOG" möglich. Wenn man dann noch Änderungen auf dem Blatt "Trainingsplan" vornahm, musste die TE-Auswahl wieder hin- und hergewechselt werden um den BB-Code zu aktualisieren, Änderungen der einmaligen Übungsreihenfolge mussten dann neu eingegeben werden.
    Jetzt gibt es einen zusätzlichen Refresh-Button, der nur den BB-Code neu erzeugt, alle Änderungen bleiben erhalten.
  • Verbesserte Funktionalität fĂĽr Clustertraining
    - Es sind jetzt beliebig viele Cluster möglich
    - Bei gleicher Clustergröße erfolgt die Foren-Ausgabe jetzt als "c*w" bei gleicher Clustergröße (c=Clusteranzahl, w=wh pro Cluster), z.B. 5x3 statt bisher "3-3-3-3-3", was bei sehr vielen Clustern schnell unübersichtlich wurde (dieses Feature ist in meinem Log schon sehr lange zu sehen).
    - Mix aus Cluster- und Satztraining ist jetzt möglich.
    - Bei der Eingabe der Wiederholungen für Clustertraining ist jetzt neben der Schreibweise "3;3;3;3..." auch die Eingabe als "c*w" oder "cxw" möglich (z.B. wird "12x3" direkt bei der Eingabe in "3;3;3;3;3;3;3;3;3;3;3;3" übersetzt)
  • Automatische Umschaltung des Anzeige-Modus
    Abhängig von Verwendung unterschiedlicher/gleicher Gewichte in den Sätzen wird der Anzeigemodus (einzeilig/zweizeilig pro Übung) jetzt automatisch umgeschaltet. Die manuelle Umschaltung ist natürlich weiterhin möglich.


Bug Fixes
  • 64 Bit Deklarationen fĂĽr API-Aufrufe ergänzt (korrigiert Fehler bei 64 Bit Office Versionen)
  • Fehler bei Anzeige der Wiederholungen bei mehr als 2 Clustern in Diagrammen beseitigt
  • Rundungsfehler bei Ausgabe der Gewichte und Gewichtssteigerungen beseitigt
  • Fehler auf Blatt "TP_aktuell" bei Verwendung der letzten Ăśbungsspalte beseitigt

Viel SpaĂź mit der neuen Version. :-bd

GruĂź
JĂĽrgen
Wer etwas will, findet Wege. Wer etwas nicht will, findet GrĂĽnde.
Benutzeravatar
Tomcat
 
Beiträge: 1981
Registriert: 24 Okt 2012, 19:20
Wohnort: Flensburg


ZurĂĽck zu Trainings-TagebĂĽcher

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron