Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Kegelliste nach und nach erarbeiten ?
#31
Hi Frank,

(28.11.2014, 19:09)WergibtmirRat schrieb: Ja oder Nein???

Eine Benutzungsanleitung wäre seeeeeehr hilfreich!

Du hast in Deinem Beitrag einen Ablauf beschrieben, ist das schon enthalten oder ist Dein ganzer Text nur ein Wunsch-Zettel, was wir jetzt mit Dir zusammen alles programmieren sollen?

Hier nur ein paar der auftretenden Fragen:
  • Wenn UF2 die Startansicht ist, warum startet die Datei dann mit UF1?
  • Die Personenauswahl ist suboptimal. Da können absichtlich nicht mehrere Personen auf ein Mal ausgewählt werden? Warum sind das in UF2 nicht zwei Listboxen für "Anwesende" und "noch nicht ausgewählte Personen" nebeneinander?
  • Warum hast Du zur Wurf-Ergebnis-Auswahl Dropboxen, bei denen aber keine Zahlen ausgewählt werden können?
  • Was soll nach Eingabe von W(urf/ürfel)-Zahlen gedrückt werden, was soll dann passieren?
  • Was passiert bei Button "Aktual."? Warum ist der Text nicht ausgeschrieben? Platz genug hat es im Button.
  • Was passiert bei "Eingabe"?
  • Wenn abgebrochen wird (Button "Abbruch"), wie kann die Userform wieder aufgerufen werden?
  • Bei "Quitieren" fehlt ein "t".
  • Warum heißt das Spielblatt "Spersonen"? Verschrieben?
  • Warum verwendest Du im Datenblatt immer SUMME bei total simplen Berechnungen, z.B. "=SUMME(EC12-ED1)/28" anstatt einfach nur "=(EC12-ED1)/28"?
  • Warum sind viele Datumszellen nicht als Datum formatiert?
  • Eingetragen wird momentan noch gar kein Wurfergebnis oder habe ich etwas übersehen?
Antworten Top
#32
Hi Frank,

(30.11.2014, 12:23)Rabe schrieb:
  • Wenn UF2 die Startansicht ist, warum startet die Datei dann mit UF1?

Als Allererstes würde ich die UFs in der Aufrufreihenfolge nummerieren.

zur Fehlerminimierung bei Bedienung:
Ich würde zur Spiel-Auswahl in UF1 alles andere erst mal ausblenden, so daß nur das Spiel-Auswahlfeld und der Quittieren-Button zu sehen ist. Dann benötigst Du den Text "bitte immer erst "Quittieren..." gar nicht mehr. Wenn der Button dann gedrückt wurde, werden die nächsten zu verwendenden Sachen eingeblendet und der Quittieren-Button und auch die Spiel-Auswahl könnten verschwinden, wenn Du nicht später ein anderes Spiel auswählen willst. Und so immer weiter.
Das minimiert den menschlichen Faktor und damit eine Fehleingabe gravierend!

Des Weiteren, wie Atilla schon geschrieben hat, sieht das Userform UF1 sehr zusammengepfercht aus, das könnte etwas auseinandergezogen werden, dann wirkt es übersichtlicher und strukturierter. Oder hast Du nur einen ganz kleinen Bildschirm?
Antworten Top
#33
Hi Frank,
hier drei Code-Verkürzungen:
ausgeblendete Zeilen können dann entfernt werden.

Code:
UF1:
Private Sub Cbo1_Spiel_Change()                              'Wird ein Spiel gewählt
   Dim x As Long
   Makro1
   If Cbo1_Spiel = "2 auf die Vollen" Then  'öffnet sich die entsprechende Page
   UserForm1.MultiPage2.Value = 0
    ElseIf Cbo1_Spiel = "gr.H.nr." Then
       UserForm1.MultiPage2.Value = 1
    ElseIf Cbo1_Spiel = "kl.H.nr." Then
       UserForm1.MultiPage2.Value = 2
    ElseIf Cbo1_Spiel = "Bingo" Then
       UserForm1.MultiPage2.Value = 3
    ElseIf Cbo1_Spiel = "Plus Plus Minus Mal Geteilt" Then
       UserForm1.MultiPage2.Value = 4
    ElseIf Cbo1_Spiel = "Dreihunderteins" Then
       UserForm1.MultiPage2.Value = 5
   End If
   With UserForm1.Cbo1_Spiel
      If .Value <> "" Then
      For x = 1 To 5
         Me.Controls("UserForm1.TxtBox" & x + 6).Value = .List(.ListIndex, x)  'Sp-ID, Runden, Wurf pro Kegler, ges. Wurfanz., Wurfanzahl wird ermittelt
         '      UserForm1.TextBox11.Value = .List(.ListIndex, 1) 'Sp-ID
         '      UserForm1.TextBox12.Value = .List(.ListIndex, 2) 'Runden
         '      UserForm1.TextBox13.Value = .List(.ListIndex, 3) 'Wurf pro Kegler
         '      UserForm1.TextBox14.Value = .List(.ListIndex, 4) 'ges. Wurfanz.
         '      UserForm1.TextBox16.Value = .List(.ListIndex, 5) 'Wurfanzahl wird ermittelt
      Next x
   Else
      For x = 1 To 5
         Me.Controls("UserForm1.TxtBox" & x + 6).Value = ""  'Sp-ID, Runden, Wurf pro Kegler, ges. Wurfanz., Wurfanzahl wird ermittelt
         '      UserForm1.TextBox11.Value = ""                   'Sp-ID
         '      UserForm1.TextBox12.Value = ""                   'Runden
         '      UserForm1.TextBox13.Value = ""                   'Wurf pro Kegler
         '      UserForm1.TextBox14.Value = ""                   'ges. Wurfanz.
         '      UserForm1.TextBox16.Value = ""                   'Wurfanzahl wird ermittelt
      Next x
      End If
   End With
   Label58.Caption = LblDatumZahl1 + TextBox11
   Worksheets("Spersonen").Range("Af1") = Cbo1_Spiel        'Hinweis für das nächste Spiel
End Sub

Private Sub CmdKegler_leeren_Click()
   Dim x As Long
   For x = 1 To 13
      Me.Controls("Txtname" & x).Value = ""
   Next x
'   Txtname1.Value = ""
'   Txtname2.Value = ""
'   Txtname3.Value = ""
'   Txtname4.Value = ""
'   Txtname5.Value = ""
'   Txtname6.Value = ""
'   Txtname7.Value = ""
'   Txtname8.Value = ""
'   Txtname9.Value = ""
'   Txtname10.Value = ""
'   Txtname11.Value = ""
'   Txtname12.Value = ""
'   Txtname13.Value = ""
End Sub


UF2:
Private Sub CommandButton2_Click()
   Dim x As Long
   For x = 1 To 13
      Me.Controls("Txtname" & x).Value = ""
   Next x
   '
   'Txtname1.Value = ""
   'Txtname2.Value = ""
   'Txtname3.Value = ""
   'Txtname4.Value = ""
   'Txtname5.Value = ""
   'Txtname6.Value = ""
   'Txtname7.Value = ""
   'Txtname8.Value = ""
   'Txtname9.Value = ""
   'Txtname10.Value = ""
   'Txtname11.Value = ""
   'Txtname12.Value = ""
   'Txtname13.Value = ""
End Sub

Noch ein Tipp:
Wenn Du so was im Makro stehen hast, wo mehrmals "Userform1" aufgerufen wird,
Code:
With UserForm1.Cbo1_Datum
      If .Value <> "" Then
      UserForm1.TxtDatumZahl.Value = .List(.ListIndex, 1)
      UserForm1.TxtDatumZahl1.Value = .List(.ListIndex, 2)
   Else
      UserForm1.TxtDatumZahl.Value = ""
      UserForm1.TxtDatumZahl1.Value = ""
      End If
   End With
kannst Du dstattdessen auch
Code:
With Me
   With .Cbo1_Datum
      If .Value <> "" Then
      .TxtDatumZahl.Value = .List(.ListIndex, 1)
      .TxtDatumZahl1.Value = .List(.ListIndex, 2)
   Else
      .TxtDatumZahl.Value = ""
      .TxtDatumZahl1.Value = ""
      End If
   End With
End With

verwenden.
Antworten Top
#34
Hallo @all,
Danke für die Kritiken; Verbesserungsvorschläge und Änderungsansichten.
Eine neue Tabelle mit einem hoffentlich klarerem Bild ist anbei.

.xlsm   Kegeln_CEF_2014_12_04.xlsm (Größe: 242,83 KB / Downloads: 23)
Vorab will ich erwähnen, steh zur Zeit etwas im Stress,
daher bleib ich eine großartige Erklärung schuldig.
Habe aber versucht mit Kommentaren in den Coden ein wenig die Richtung aufzuzeigen.

Es soll nicht Rätsel geraten werden, nein das ist nicht meine Absicht.
Die Hilfe (Alle meine Thread's) die ich bis dato von euch erfahren habe müssen nur noch Step by Step mit eingebaut werden.

Nächste Woche wird es ruhiger bei mir,
dann bin ich wieder öfter on (schreibend),
die ganzen Fragen auch beantworten.

allen eine schöne Vorweihnachtszeit

P.S. wie schon oft erwähnt bin VBA-Anfänger

un wech - bis denne ma
Antworten Top
#35
Hallo @all,
Hallo interessierter Lesender.
Am Rande sei erwähnt, wenn Du dich mit Kegeln nicht so gut auskennst, versuche ich es nun für einen Kegellaien so einfach zu beschreiben wie möglich.
Auch sollte nicht verschwiegen werden, das dieses Projekt schon seit Jahren (kläglich) am wachsen ist. Die meisten meiner Thread's zielten bis dato auf die einzelnen Spiele und deren Berechnungen ab. Mit den besherigen VBA-Kenntnissen habe ich schon etliches versucht, mich in verschiedenen Foren belesen, Code kopiert und studiert. Was aber da schon viel an Input war.
Bin eben ein VBA-Änfänger.
Nun zum Thema Kegelabend-Tabelle

Datenstruktur ist wie folgt erstellt
1.
- alle Personendaten
- Betrittsdatum
2.
- Kegeltermine festgelegt (im 4Wochenrhytmus)
- Geburtstage mit eingepflegt (Erinnerung)
3.
- Art der Spiele
- Spiele der Artgruppe aufgelistet
- Wurfverhalten = Würfe/Runden/Zielwerte
4.
- gefallene Holzwerte/Rechenweisen
- Holznamen und Wertetabelle
- Strafpunkte für nicht gefallene/gefallene Holz
- spezielles Strafpunktesystem
5.
- Benennung der Werfenden vom ersten bis zum letzten jeh nach Art der Spiele
6.
- Bilder erkegeln = welche Holz-/Punktezahl
7.
- Gewinnerzahl bei bis 6 = 2; Gewinnerzahl bei bis 7 = 3;Gewinnerzahl bei ab 9 = 4
- Gewinneranzahl ermittelt durch = Anzahl der Werfenden durch 2 - 1 (Abgerunden) [11 Anw. / 2 = 5,5 - 1 = 4]
#################################
Am Kegelabend wird das erscheinen der Anwesenden dokumentiert.
Vormals wurde an der Tafel die Sitzreihenfolge festgehalten.
Begonnen wird jeder Abend mit 3 Spielen zum lockern.
1stes Spiel heißt "2 auf die Vollen"; eine Runde mit 2 Wurf
Es sollen soviel Holz wie möglich bei jedem Wurf getroffen werden (ohne Kranzwertung (12))
Maximale Gewinner Holzpunktezahl = 18
danach folgen
2 & 3tes Spiel "Große -*" wie auch "Kleine Hausnummer*"
3 Runden mit 1 Wurf
* Beide Spiele können in Variationen gespielt werden, ohne oder mit vorheriger Ansage.
Ansage heißt hier, die erhofften Holz so zu platzieren das man dadurch auch gewinnen kann.
3te Variante ist vorab von rechts nach links; links nach rechts anzusagen, egal was man wirft (Können/Wurfhändchen)
3 Felder sind zu befüllen: Vorne(100) - Mitte(10) - Hinten(1).
Bei der "Großen Hausnummer" zählt die/der Kalle/Pudel 0 Punkte
Der Werfende bekommt hierfür einen Strafstrich/-punkt
Maximale Gewinner Holzpunktezahl = 999
Spiel "Kleine Hausnummer" zählen die oben erwähnten 9 Punkte
Minimale Gewinner Holzpunktezahl = 001 (mit der kleinsten Kugel ist ein Durchwurf zu schaffen)

Nach Beendigung der einzelnen Spiele kann anhand der getätigten Eingaben ersehen werden wer sich Gewinner schimpfen darf, wer Verlierer.
Auch wird jedes Strafbild festgehalten: Wer ist Kallenkönig; wer hat die meisten Holzpunkte; Kallen oder ect. .
Wirft ein Kegler eine 9, (das heißt, räumt alle Kegel ab) ist ein Feuer der Emotion gefragt.
Einzelgesang "Unserem Kegelbruder/-schwester ein dreifach "GUT" Alle "HOLZ"; Einzel "GUT" alle "HOLZ"; Einzel "GUT" alle "HOLZ"

Der Wurf ist leider auch nicht ohne Folgen jeder am Tisch sitzende bekommt hierfür einen Strafstrich/-punkt

Nur schnell die Strafen auflisten
Stina -
photo CEF01_zps83291332.jpg - 1 Strafpunkt
Strafe am Werfer; trage nun eine Schürze bis zum nächsten Stina
Kackstuhl -
photo CEF02_zps819a0a7f.jpg - 1 Strafpunkt
Strafe für den Werfer; kleines Klosett(Topf) vor seinem Platz
Kalle/Pudel - Kugel verlässt links oder rechts die Bahn - 1 Strafpunkt
Strafe für den Werfer; Kleiner Hund vor seinem Platz(Stofftier)
Begrenzungsglocke ertönt - Beim Abwurf wird die Begrenzung berührt oder drüber abgeworfen (Keine Punktmitnahme)
Strafe für den Werfer; Kleine Kuh-Almglocke

Alle erworbenen Strafe sind beim nächsten Kegel wieder mitzubringen, sonst muss Strafzoll entrichtet werden.

Ihr, die ihr hier als letzte geschrieben habt, habt nätürlich recht: Alles sehr unausgewogen; unübersichlich , zuviel Info auf den UF-Oberflächen.
Deswegen erbitte ich mir eure Hilfe, verschiedene Dateien hab ich ja schon hier und da hochgeladen.

Werde weitere Spiele nachreichen/schreiben/beschreiben

Danke für den Lese-Enthusiasmus
Antworten Top
#36
Nächste Spielerklärung mit ein paar Darstellungsproblemen
Nun wird ein Spiel dank Mehrheitsbeschluß ausgewählt. (Mehrheit > 51%)
Zumeist handelt sich dann um "JederGegenJedenspiele".

Link zur letzten Tabelle des Thread's "Dries-alle-Fragen-neu-fragen" Kassenpartie wäre ein großer Favorit, da ein Geldspiel, für die Kegelkasse

Erklärung: Hin- und Rückrunde (12 Runden a 1 Wurf; Hin 6, Rück 6)
Aufschreibungsfelder sind: 0,20; 0,40; 0,60; 0,80; 1,00 & 1,20 €
Anfangs mit vorheriger Ansage wo das Wurfergebnis einzuschreiben ist.
Hier sei aus taktischer Sicht gesagt, der niedrigste Wurfwert einer Spalte muss bezahlt werden.
Pech für den der nicht richtig setzt, beziehungsweise niedrig wirft. Hinrundensumme 4,20€ teuer wenn alles markiert ist.
In der Rückrunde hat jeder 6 Versuche alle geworfenen Holzpunktzahlen zu tilgen, es wird immer zuerst der höchste Eurobetrag bei Gleichheit gestrichen.
Zum Schluss wird der Endbetrag aus beiden Läufen addiert.
Hier kann man als Top-Gewinner (0€) oder Biggest Loser (8,40€) hervor treten.

Das ganze in ein Exceltabellenblatt per Userform einzutragen, birgt da noch

Probleme

1. Anzahl Kegler darstellen (Stammkegler 9, mit Gästen maximal 12 Personen)?
2. Vorab Formeln in den Berechnungszellen stellen oder per VBA nach dem letzten Wurf alles berechnen lassen?
3. Ergebnisausgabe per Listbox aus festgelegtem Bereich oder wie anders darstellen?

Wie gehe ich am besten vor?
Einzelnes Formular oder in eine Multipage organisieren?

Ich bitte euch um kreative Meinungen.
Bin für alles offen ...
Antworten Top
#37
(30.11.2014, 12:23)Rabe schrieb: ...Eine Benutzungsanleitung wäre seeeeeehr hilfreich!

Du hast in Deinem Beitrag einen Ablauf beschrieben, ist das schon enthalten oder ist Dein ganzer Text nur ein Wunsch-Zettel, was wir jetzt mit Dir zusammen alles programmieren sollen?
Hallo Ralf, es ist vieles der Anmerkungen enthalten, zum Teil auch Wunschzettel und ich freue mich beim programmieren auf eure Unterstützung.

(30.11.2014, 12:23)Rabe schrieb: Hier nur ein paar der auftretenden Fragen:
  • Wenn UF2 die Startansicht ist, warum startet die Datei dann mit UF1?
Formular UF1 ist als erstes entstanden, Startformular danach, habe es nur nicht umgestellt.
(30.11.2014, 12:23)Rabe schrieb:
  • Die Personenauswahl ist suboptimal. Da können absichtlich nicht mehrere Personen auf ein Mal ausgewählt werden? Warum sind das in UF2 nicht zwei Listboxen für "Anwesende" und "noch nicht ausgewählte Personen" nebeneinander?
  • Ich wüsste nicht wie ich das anders bewerkstelligen sollte. Für die Anwesenden wäre eine Mehrfachauswahl da wohl besser

    (30.11.2014, 12:23)Rabe schrieb:
  • Warum hast Du zur Wurf-Ergebnis-Auswahl Dropboxen, bei denen aber keine Zahlen ausgewählt werden können?
  • Habe nur für das erste Spiel eine Auswahl hergestellt.

    (30.11.2014, 12:23)Rabe schrieb:
  • Was soll nach Eingabe von W(urf/ürfel)-Zahlen gedrückt werden, was soll dann passieren?
    • Was passiert bei Button "Aktual."? Warum ist der Text nicht ausgeschrieben? Platz genug hat es im Button.
    • Was passiert bei "Eingabe"?
    • Wenn abgebrochen wird (Button "Abbruch"), wie kann die Userform wieder aufgerufen werden?
    • Bei "Quitieren" fehlt ein "t".
    • Warum heißt das Spielblatt "Spersonen"? Verschrieben?
    • Warum verwendest Du im Datenblatt immer SUMME bei total simplen Berechnungen, z.B. "=SUMME(EC12-ED1)/28" anstatt einfach nur "=(EC12-ED1)/28"?
    • Warum sind viele Datumszellen nicht als Datum formatiert?
    • Eingetragen wird momentan noch gar kein Wurfergebnis oder habe ich etwas übersehen?

    Stimmt beim drücken des Eingabe_Button und Aktualisieren_Button passiert zu Zeit nichts, habe da noch nicht weiter geschrieben.
    #####
    (20.11.2014, 19:31)atilla schrieb: ...mehrmals so eine Schleife ... Aufbau Deiner Tabellen sind auch suboptimal ... wenn Listen vorliegen. Tabellen also immer in Listenform anlegen.
    Wenn ich Dir wirklich helfen wollte und könnte (Zeitmangel), dann würde das Ganze von Grund auf neu Aufbauen...
    Hallo Atilla,
    die Schleifen sind zur Zeit bis 36, derweil 36 Comboboxen mit der gleichen Wertestruktur versehen sind.
    Listen liegen im Datenblatt vor
    Zum Ablauf eines Kegelabends habe ich die ersten ausführlichen Erklärungen oben schon gegeben
    Persönlich fülle ich mich nicht angegriffen, im Gegenteil eure Kritik zeigt meine Schwachstellen auf.
    Es wäre echt nett mit eurer Hilfe was optimales, gut durchdachtes auf die Beine zu stellen
    #####

    (20.11.2014, 23:31)BoskoBiati schrieb: ...alle Spiele aufgelistet, die Regeln und Bedingungen ... eine Liste aller Spieler ... suboptimalen Schleifen sind mir auch schon aufgefallen, die kann man ganz anders aufbauen.
    Hallo Edgar,
    die meisten Daten existieren ja im Datenblatt, alle schön getrennt
    Die Regeln/Bedingungen das ist schon so eine Sache, dazu brauch es mehrere Seiten
    Ablaufplan ergibt sich aus der Abfolge der Spiele
    Suboptimale Schleifen sind im Moment meine Mittel zum arbeiten, da bin ich bereit zu lernen, wie und warum anzuwenden
    #####
    (30.11.2014, 00:05)Max schrieb: ...Hoffe Licht ins Dunkel gebracht zu haben...
    Hallo Max,
    danke für deine klärenden Worte
    #####

    Ich werde nächste Woche mal eine andere Tabelle einstellen, die oberen sind wohl nicht aussagekräftig genug.

    schönes Restweekend
    Antworten Top


    Gehe zu:


    Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste