1.4k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo zusammen, nach langem Suchen bin ich wohl auf die richtige Seite gekommen und ich hoffe, dass mir jemand helfen kann. Mein Zuhause ist eigentlich Excel und ich habe den Schritt gewagt mich in der VBA_Sprache anzusiedeln.

Sachverhalt:

Ich habe in VBA eine User Form mit Kegler Daten und mehreren TextBoxen (60 Wurf) angelegt.
Meine Probleme sind es zurzeit, dass in Excel die Uhrzeit (19:30) eingegeben wird. In VBA wird diese als Dezimalzahl angezeigt. Ich habe schon alles versucht, aber ich bekomme das nicht hin.

Ferner habe ich für die 60 Würfe je Kegler eine User Form angelegt.
TextBox 14 - Textbox23 werden mit Daten gefüllt.
In der TextBox 23 wird die Summe der 10 TextBoxen eingestellt.
Private Sub TextBox15_Change()

Me.TextBox24 = Val(Me.TextBox14) + Val(Me.TextBox15) + Val(Me.TextBox16) + Val(Me.TextBox17) + Val(Me.TextBox18) + Val(Me.TextBox19) + _Val(Me.TextBox20) + Val(Me.TextBox21) + Val(Me.TextBox22) + Val(Me.TextBox23)
End Sub

In der TextBox 24 will ich eine (Über/Unter Summe -70) einstellen.
Also Ergebnis TextBox (24-70), in der TextBox 25 soll dann die Differenz (80-70= +10) stehen.
Das bekomme ich nicht hin.

Kann mir da jemand unter die Arme greifen?

14 Antworten

0 Punkte
Beantwortet von
Hallo Stanley,

Das ist eine der wenigen Ausnahmen, die sich ohne VBA viel leichter realisieren lassen. Für deine Wünsche bietet Excel bereits die passenden Funktionen an. Im VBA muss man die erst erstellen. Schau dir mal alternativ [url=https://workupload.com/file/gDetFkZ]diese Datei[/url] an.

Da du aber schon so viel Arbeit reingesteckt hast, und ich mich immer freue, wenn jemand sich mit VBA beschäftigt, hab ich auch an [url=https://workupload.com/file/HVhcYYn]deiner Datei[/url] die gewünschten Anpassungen gemacht. Natürlich könnte man den Code noch viel eleganter gestalten. Aber du sollst ihn ja auch verstehen. Daher hab ich (auch aus Zeitgründen) nur ein paar Kleinigkeiten geändert.

Bei weiteren Fragen, nur zu.

Mr. K.
0 Punkte
Beantwortet von
Hei Mr. K.,
vielen Dank für deine Unterstützung in meinem Keglerprogramm. Ich habe mich riesig über deine Hilfestellung und die Lösungen gefreut. Mein nächster Step ist, über eine Menuemaske die jeweiligen Unterprogramme aufzurufen. Es wird nicht leicht werden, aber es macht mir sehr viel Spaß.
Sicherlich arbeite ich auch daran, die Programme eleganter zu schreiben, aber dazu fehlt noch das Wissen.
Meine Frage an dich wäre, könnte mann die Keglerergebnisse Würfe z.B. 1-10 auch über eine Schleife abarbeiten?
Gruß
Stanley
0 Punkte
Beantwortet von
Hallo Stanley,

wie gesagt, es gibt viele Möglichkeiten den Code zu gestalten. Von
ganz einfach über mittelschwer bis zu etwas komplizierter. Momentan
stehen wir irgendwo zwischen einfach und mittelschwer. Doch egal
wofür man sich entscheidet, was zählt ist am Ende das Ergebnis.

Welche Art von Schleife stellst du dir denn vor? Zurzeit werden die
Textboxen an ein Array in einer Function übergeben, und dort bereits
per Schleife durchgeprüft. Das hat den Vorteil, dass du nicht sämtliche
Nummern ändern musst, falls du mal einen Wurf-Spalte hinzufügst
oder löschst. Wenn du eine andere Art der Übergabe bevorzugst, dann
schreib sie einfach. Mir fällt dann schon was ein.

Gruß Mr. K.
0 Punkte
Beantwortet von
Hei Mr.K.,

habe ein paar Tage Pause aus gesundheitlichen Gründen machen müssen.
Bitte schauen Sie sich die neue Tabelle einmal an. Meinen Kommentar haben dort hineingeschrieben, war zu lag.

Mr.K. Die Datei ist verschlüsselt.

http://filehorst.de/d/cBanCmfj


Gruß
Stanley
...