1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Excel Bug?

Discussion in 'Office-Programme' started by Leichi, Apr 4, 2008.

Thread Status:
Not open for further replies.
  1. Leichi

    Leichi Byte

    Hallo

    Für ein online Browsergame wolte ich einen Kampfsimulator erstellen, bei dem ich im voraus bestimmen kann ob ich verlieren oder gewinnen werde.
    Dabei stellten sich mir einige Probleme in den weg, die ich noch nie gesehen habe.Ich hoffe ihr mit mehr excel Erfahrung könnt mir dabei helfen.

    Mein Problem

    Ich musste die Spalte Struktur und Schild für die Verteidigung zusammenrechnen und dann mal die Anzahl der Schiffe rechnen.
    Zuerst rechnete ich ((M1+N1)*O1) Resultat = war richtig. Ich zog die Formel runter. und da gab es manchmal 0(falsch) manchmal das richtige Resultat. Wenn ich sie selber neu eingab, war auch ca. 50% falsch.

    Danach versuchte ich es mit der Formel =produkt(summe(M1;N1);O1) Wider das selbe Problem. Ob richtig oder falsch war reiner zufall. Änderte ich nur eine stelle der Zahl funktionierte es manchmal wider.

    Ich dachte danach dass ich in einer Spalte zuerst mal M1+N1 addiere und in einer anderen dann mal O1 rechne. Doch auch das war nichts :confused: . Seht mal selber: angehängtes Bild

    #Wert!? Formatierung ist richtig, auf Zahl. Die Excel Hilfe liefert auch keine nützliche Informationen darüber. Kennt ihr dieses Problem?


    Danke für die Hilfe
    Gruss Andreas
     

    Attached Files:

  2. brum

    brum Kbyte

    Das Problem liegt bei den Zahlen bzw. bei den Tausender-Trennzeichen! Die Zahlen werden von Excel nicht als Zahl sondern als Text behandelt.

    Edit: Müsste bei Summe aus "Texten" nicht einfach das Resultat 0 erscheinen und nicht #Wert?

    Gruss
    Bruno
     
  3. Leichi

    Leichi Byte

    Danke brum für die schnelle Antwort

    D.h. Ich muss die Formatierung auf Text ändern? Geht dann leider auch noch nicht. Tausendertrennzeichen rausnehmen funktioniert nicht mehr. Ich werde mal ein neues Blatt öffnen und alles dort reinkopieren. Dann sollte es gehen. Liege ich da richtig?

    "Edit: Müsste bei Summe aus "Texten" nicht einfach das Resultat 0 erscheinen und nicht #Wert?"

    Hmm... Dass kann ich dir erst später sagen, sobald ich alles kopiert habe. Dann sehe ich ja ob der #Wert auch verschwindet.


    *edit*
    Thx Nun geht es. hab alles in ein neues Blatt kopiert und nun rechnet es richtig.

    Noch ne kurze Frage. Wie könnte man am folgende Situation am besten ausrechnen:

    Angreiffer 4000 Lebenspunkte
    1000 Angriffspunkte

    Verteidiger 6800 Lebenspunkte
    500 Angriffspunkte

    Der Angreifer schiesst mit einer Stärke von 1000 auf den Verteidiger. Der Verteidiger hat danach noch 5800 Verteidigungspunkte.

    Danach ist der Verteidiger am Zug. Verloren hat der, der zuerst 0 Lebenspunkte hat. Wie würdet ihr das ausrechnen?

    Mit VB? Gibt es auch ne möglichkeit ohne?

    Gruss Andy
     
  4. Urs2

    Urs2 Megabyte

    Warum die erste Formel =(M1+N1)*O1 nicht funktionierte, ist mir ein Rätsel. Excel ist sonst sehr grosszügig bei Zahlen, es frisst Textformate oder Tausendertrenner... da muss wohl das ganze Blatt verstellt worden sein...

    Zur Frage > Hochinteressant > so eine Art Wett-Watschen?
    Einer watscht - lässt watschen - watscht - ... bis einer ausgewatscht ist.

    Lebenspunkte-Verteidiger durch Angriffspunkte-Angreifer, aufgerundet auf Ganzzahl = nötige Runden für den Angreifer
    Für den Verteidiger das gleiche umgekehrt.
    Wer weniger Runden braucht hat gewonnen. Bei Gleichstand in Runden gewinnt der Angreifer (sofern er immer beginnt), der Verteidiger kommt dann ja nicht mehr zum zurückschlagen...

    Ich nehme an
    B10 = Lebenspunkte-Angreifer
    C10 = Angriffspunkte-Angreifer
    B11 = Lebenspunkte-Verteidiger
    C11 = Angriffspunkte-Verteidiger
    ...dann kommt in die Resultatzelle diese Formel

    =WENN(AUFRUNDEN(B11/C10;0)<=AUFRUNDEN(B10/C11;0);"Angreifer";"Verteidiger")

    Du kannst auch die nötigen Runden anzeigen lassen, dann muss die Formel halt zerlegt werden.

    Gruss Urs
     
  5. Hascheff

    Hascheff Moderator

    Für die Zukunft: Du darfst eine Spalte nicht vor der Dateneingabe formatieren. (M und N hast du sicher vorher rechtsbündig formatiert.) Dann erkennst du sofort, ob Excel die Eingabe als Zahl erkennt.
     
  6. Urs2

    Urs2 Megabyte

    Richtig!
    Wenn das Zellenformat in einer neuen Mappe auf Standart belassen wird, macht Excel dann daraus, was es für richtig hält, und sehr oft ist das dann auch richtig.

    Vermutlich wurde vorher das Format allgemein auf Zahl gestellt, ohne natürlich den Haken für die Tausendertrenner bei den betroffenen Bereichen zu setzen...

    Gruss Urs
     
  7. Leichi

    Leichi Byte

    Ja so war es. Danke für die Tipps, die werde ich mir merken für die Zukunft.

    @Urs2 Hier siehst du mal wie es genau aussieht:

    -----
    DATEN DES ANGREIFERS
    Schild (150%): 80`070
    Struktur (120%): 81`408
    Waffen (180%): 14`958
    Einheiten: 54

    DATEN DES VERTEIDIGERS
    Schild (110%): 20`350
    Struktur (160%): 17`760
    Waffen (130%): 481
    Einheiten: 37

    1: 54 Einheiten des Angreifes schiessen mit einer Stärke von 14`958 auf den Verteidiger. Der Verteidiger hat danach noch 23`152 Struktur- und Schildpunkte

    1: 37 Einheiten des Verteidigers schiessen mit einer Stärke von 481 auf den Angreifer. Der Angreifer hat danach noch 160`997 Struktur- und Schildpunkte


    2: 54 Einheiten des Angreifes schiessen mit einer Stärke von 14`958 auf den Verteidiger. Der Verteidiger hat danach noch 8`194 Struktur- und Schildpunkte

    2: 23 Einheiten des Verteidigers schiessen mit einer Stärke von 299 auf den Angreifer. Der Angreifer hat danach noch 160`698 Struktur- und Schildpunkte


    3: 54 Einheiten des Angreifes schiessen mit einer Stärke von 14`958 auf den Verteidiger. Der Verteidiger hat danach noch 0 Struktur- und Schildpunkte

    3: 8 Einheiten des Verteidigers schiessen mit einer Stärke von 104 auf den Angreifer. Der Angreifer hat danach noch 160`594 Struktur- und Schildpunkte

    -----> Angreiffer gewinnt
    ----

    Ich werde mal mit den Formeln einwenig rumspielen, vieleicht finde ich auch so noch eine Lösung. Mal sehen ob es mir gelingt :rolleyes:


    Gruss Andy
     
  8. Urs2

    Urs2 Megabyte

    Ich habe zwar eine blühende Phantasie, aber aus der Nähe gesehen, hatte ich solche Spiele noch nie. Nur mit Rechenschieber und Logarithmentafel war zu meiner Zeit nicht einmal dem "Schiffe Versenken auf einem Blatt Papier" beizukommen...

    Meine Formel funktioniert gemäss Deiner ersten Vorgabe im ehrlichen Zweikampf, und mit gleichbleibender Schlagkraft bis zum bitteren Ende - ich dachte noch, das sei aber ein sehr "interessantes" Spiel...

    - Die %-Zahlen sind vorgegeben für Ausbildung, Qualität etc und bleiben gleich?

    - Eine Runde ist ein Ganzes, wenn der Staub weg ist, wird abgerechnet?

    - Der Angreifer ist im Beispiel ja so überlegen, dass er kaum angekratzt wird. Die Kampfkraft des Verteidigers dagegen, nimmt logischerweise ab. Aber nach welchen Kriterien? Noch eine Variable...

    Die Arithmetik des Programms muss zur Simulation einfach nachvollzogen werden. Diese scheint nicht extrem kompliziert zu sein... sofern die Regeln wirklich so einfach sind, wie es scheint. Die Hauptarbeit für das Programm ist ja wohl die Grafik.

    Die Regeln müssen in Einzelteile zerlegt werden, ob man das dann im Tabellenblatt oder mit VBA wieder zusammenrechnet, ist nur eine Geschmacks- oder Erfahrungsfrage.

    Im Tabellenblatt würde ich oben links nur die Ein- und Ausgabezellen lassen. Rechts davon und darunter (so kann man im Eingabeteil Spalten und Zeilen löschen) dann all die Zellen mit einfachen Einzelberechnungen. Und hinschreiben was man getan hat... man vergisst schnell.

    Du spielst Online. Nebenbei möchtest Du gleichzeitig den Ausgang des Kampfes simulieren - für Deinen Entscheid "Fliehen oder Kämpfen". Richtig?
    Der PC könnte das schon, aber Du?
    Reicht die Zeit zum Eintippen der vielen Variablen, um dann nicht mit der richtigen Erkenntnis ins Spiel zurückzukehren, um... nur noch den Ausgang der schon gelieferten Schlacht feststellen zu dürfen?

    Viel Vergnügen und Gruss
    Urs
     
  9. Leichi

    Leichi Byte

    Hy Urs2 vielen Dank für deine Unterstützung

    "Die %-Zahlen sind vorgegeben für Ausbildung, Qualität etc und bleiben gleich?"^
    Die Prozentzahlen kommen von der Technologie. Diese muss ich später noch berechnen. Ist aber sehr einfach gemacht.

    "Eine Runde ist ein Ganzes, wenn der Staub weg ist, wird abgerechnet?"
    Ja so ist es.

    "Der Angreifer ist im Beispiel ja so überlegen, dass er kaum angekratzt wird. Die Kampfkraft des Verteidigers dagegen, nimmt logischerweise ab. Aber nach welchen Kriterien? Noch eine Variable..."
    Immer minus die Angriffskraft des Angreiffers der vorigen runde.

    Die Startdaten:
    DATEN DES VERTEIDIGERS
    Schild (110%): 20`350
    Struktur (160%): 17`760
    Waffen (130%): 481
    Einheiten: 37

    1: 54 Einheiten des Angreifes schiessen mit einer Stärke von 14`958 auf den Verteidiger. Der Verteidiger hat danach noch 23`152 Struktur- und Schildpunkte.

    Anfangspunkte (Struktur/Schild): 38'110
    Angriffspunkte Angreiffer: 14'958
    Nach dieser Runde bleiben
    vom Verteidiger noch Punkte übrig: 23'152
    Nächste Runde ist der Verteidiger
    am Zug. Dann dasselbe von vorne.

    "Die Arithmetik des Programms muss zur Simulation einfach nachvollzogen werden. Diese scheint nicht extrem kompliziert zu sein... sofern die Regeln wirklich so einfach sind, wie es scheint. Die Hauptarbeit für das Programm ist ja wohl die Grafik."
    Ja. Wie ich schon sagte, sehr einfach gemacht. Das komplierte für mich war die Formeln. Ich hab im Excel noch sehr wenig Erfahrung und kann erst wenige Formeln.


    "Du spielst Online. Nebenbei möchtest Du gleichzeitig den Ausgang des Kampfes simulieren - für Deinen Entscheid "Fliehen oder Kämpfen". Richtig?
    Der PC könnte das schon, aber Du?
    Reicht die Zeit zum Eintippen der vielen Variablen, um dann nicht mit der richtigen Erkenntnis ins Spiel zurückzukehren, um... nur noch den Ausgang der schon gelieferten Schlacht feststellen zu dürfen?"

    Fliehen oder Kämpfen? Weniger. Es ist mehr für den Angriff gedacht, um Anzahl Schiffe zu berechnen welche man schicken möchte. Für Schiffe mit viel Angriffskraft und 0 Verteidigung, sogenante "Drohnen". Denn da sollte man genau die richtige Anzahl mitschicken, da bei einem Kampf immer alle zerstört werden. Nicht dass noch zuviele draufgehen.


    "Der PC könnte das schon, aber Du?" Ja mit dem Kopf, Blattpapier und einem Stift. Jedoch ist es eine Frage der Zeit.



    "Reicht die Zeit zum Eintippen der vielen Variablen, um dann nicht mit der richtigen Erkenntnis ins Spiel zurückzukehren, um... nur noch den Ausgang der schon gelieferten Schlacht feststellen zu dürfen?"

    Bei einem Angriff auf mich? Unteschiedlich, kommt darauf an von wo die Schiffe kommen.

    Für das Spiel ist der Simulator nicht unbedingt notwendig. Ich wollte mehr mal sehen, ob ich das schaffe und ob das möglich ist. Weitermachen werde ich schon, doch wenn es nicht gelingt ist es auch nicht so schlimm.

    Gruss Andy
     
Thread Status:
Not open for further replies.

Share This Page