Mini-appli de bowling

Bonjour,

je débute à peine et je souhaite faire une logiciel pour bowling dans le cadre d'un travail universitaire (je suis en STAPS...).
Je voudrais ajouter une fonctionnalité qui permettrai de savoir si une quille à été renversée ou non, et pour cela je voudrais faire d'une image un bouton/case à cocher. Mais malgré mes recherches je n'arrive pas à me débrouiller seul, je bute sur la procédure ainsi que la formule à appliquer dans VBA.

Je joint mon fichier, si quelqu'un peut me donner des conseils se serait extra.

Merci et bonne soirée

20logiciel11.xlsm (175.90 Ko)

Salut,

Je ne suis pas certain d'avoir compris ta demande, mais voici un essai afin de te montrer une possibilité d'agir en cliquant sur les quilles des colonnes AA à AK.

Si tu cliques sur les quilles 1 ou 8 - choisies au hasard, comme exemples - elles se grisent ou se noircissent en alternance et le résultat dans la colonne BB est modifié à chaque fois.

Il y a toutes sortes de possibilités par la suite : griser ou noircir toutes les quilles d'une seule fois ou que-sais-je d'autre.

Cordialement.

21logiciel11-v1.xlsm (179.22 Ko)

Bonjour,

Ouiii, c'est exactement ça que je voulais faire !!

Comment as-tu fais ça ?

Cordialement

Tu as une petite idée des macros ou pas du tout ? Dans ce deuxième cas, ce ne sera pas évident à expliquer.

Je pourrais bien faire le travail pour les 10 quilles, mais si tu as besoin de plus, je ne pourrais peut-être pas aller au bout de ton projet.

Oui je connais le principe des macros, mais je ne m'y connais pas assez pour faire ça de moi-même

La macro de base ci-dessous, Macro1, fonctionnerait pour toutes les quilles.

Je t'ai montré les macros secondaires pour les quilles 1 et 8. Tu n'arrives pas à recopier ces exemples ?

Si tes "Connecteur'' suivaient la numérotation des quilles, ce ne serait peut-être pas nécessaire de faire une macro secondaire par quille, mais d'effectuer une boucle dans une seule macro. J'ai tenté, mais sans succès, de modifier le nom de tes connecteurs.

Sub Quille_1()
    Connecteur = 5
    Ligne = 10
    Call Macro1
End Sub

Sub Quille_8()
    Connecteur = 15
    Ligne = 17
    Call Macro1
End Sub

Sub Macro1()

    ActiveSheet.Shapes.Range(Array("Flowchart: Connector " & Connecteur)).Select

    If Selection.ShapeRange.Line.ForeColor.Brightness = -0.5 Then
        With Selection.ShapeRange.Line
            .ForeColor.ObjectThemeColor = msoThemeColorText1
            .ForeColor.Brightness = 0
        End With
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1).Font.Fill
            .ForeColor.ObjectThemeColor = msoThemeColorText1
            .ForeColor.Brightness = 0
        End With
        Range("BB" & Ligne) = 1
    Else
        With Selection.ShapeRange.Line
            .ForeColor.ObjectThemeColor = msoThemeColorBackground1
            .ForeColor.Brightness = -0.5
        End With
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1).Font.Fill
            .ForeColor.ObjectThemeColor = msoThemeColorBackground1
            .ForeColor.Brightness = -0.5
        End With
        Range("BB" & Ligne) = 0
    End If

    Range("A1").Select

End Sub

Amicalement.

@Yvouille ...

je n'ai pas eu le courage, mais maintenant que tu as fait tout le boulot, on pourrait sans doute mettre une seule et même macro pour tous les boutons/quilles en mettant

Application.Caller
Sub Macro1()

    ActiveSheet.Shapes.Range(Array(Application.Caller)).Select

pour la ligne, je n'ai pas d'idée sauf à mettre des noms de zone

Salut Steelson,

Merci pour ton message. A voir ce que dit le membre

Salut les gars, merci pour vos réponses.

Honnêtement c'est trop technique pour moi, je ne connais pas du tout le langage des macros comme vous ahah...

Je vous laisse voir les points techniques entre vous du coup

Cordialement

Bonjour,

@ Steelson

Je n'ai pas très bien compris ce que me propose et j'ai essayé ceci (qui ne fonctionne pas, bien entendu )

image

Peux-tu corriger cela ?

Cordialement.

4logiciel11-v2.xlsm (186.15 Ko)

Il suffirait de mettre la même macro à toutes les quilles

Option Explicit
Dim Connecteur As Byte, Ligne As Byte

Sub Macro1()

    ActiveSheet.Shapes.Range(Array(Application.Caller)).Select
    Ligne = Replace(Application.Caller, "Organigramme : Connecteur ", "")

    If Selection.ShapeRange.Line.ForeColor.Brightness = -0.5 Then
        With Selection.ShapeRange.Line
            .ForeColor.ObjectThemeColor = msoThemeColorText1
            .ForeColor.Brightness = 0
        End With
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1).Font.Fill
            .ForeColor.ObjectThemeColor = msoThemeColorText1
            .ForeColor.Brightness = 0
        End With
        Range("BB" & Ligne) = 1
    Else
        With Selection.ShapeRange.Line
            .ForeColor.ObjectThemeColor = msoThemeColorBackground1
            .ForeColor.Brightness = -0.5
        End With
        With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 1).Font.Fill
            .ForeColor.ObjectThemeColor = msoThemeColorBackground1
            .ForeColor.Brightness = -0.5
        End With
        Range("BB" & Ligne) = 0
    End If

    Range("A1").Select

End Sub

sauf que Ligne n'est pas forcément ce qui est écrit dans la boule car les n° ne correspondent pas aux noms.

Par exemple la boule 10 porte le nom "Organigramme : Connecteur 13" ... c'est dommage car cela permettrait d'utiliser une seule et même macro. Ou bien il faut faire une table de correspondance.

J'ai trouvé !

Option Explicit
' plus rien ici, plus de quille_1() etc.
Sub Macro1()
Dim Ligne As Byte

    ActiveSheet.Shapes.Range(Array(Application.Caller)).Select
    Ligne = Selection.ShapeRange(1).TextFrame.Characters.Text + 9

' le reste sans changement

et affecte cette seule macro à toutes les quilles

exemple épuré (car le reste je n'ai pas compris)

9bowling.xlsm (41.72 Ko)

Bonjour Messieurs,

tout d'abord pardonnez-moi pour mon absence, j'ai eu des partiels plus urgents et important à traité.

Concernant mon projet, voici où j'en suis maintenant : je me suis recentré et j'ai laissé tombé mon idée de complété le tableau de scores via le schéma des boules.

Dorénavant , je me concentre sur le suivi de trajectoire le long de la piste, via le schéma de droite.

J'ai préciser les prochaines étapes dans le tableur, ce sont des trucs pas très compliqué je pense, mais je bute quand même dessus...

Dans VBA, dans le module 4 j'ai essayé de reprendre le code de changement de luminosité que vous m'aviez envoyé, mais je ne comprend pas comment il marche

Cordialement

5version-23.zip (183.28 Ko)
Rechercher des sujets similaires à "mini appli bowling"