-1

Я пытаюсь разработать превосходную версию бейсбольной системы показателей с бриллиантами, представляющими основание с первой по третью, и пятиугольником для домашней таблички.

В настоящее время я работаю только с первыми игроками, которые бьют и используют информацию о бейсболе в первом тайме, и скопирую рабочий код остальным игрокам и другим иннингу. Я поместил скрытые кнопки сверху каждой базы, кнопку сверху круга Out, четыре кнопки для шаров и три кнопки для ударов.

  1. Суть в том, что при броске мяча или удара соответствующая кнопка нажимается, а цвет кнопки назад становится темно-серым. Если игрока нет, то нажимается кнопка в верхней части внешнего круга, которая заполняет круг черным цветом. Для каждой базы бегун делает это безопасно, кнопка нажата, и база заполнена черным цветом. Когда нажата кнопка «Домашняя пластина», заполняет домашнюю пластину черным цветом и увеличивает на единицу счет в домашней таблице. Будет ли это работать, и если да, кто-нибудь, пожалуйста, помогите мне с частью VBA каждого события?

  2. Если по какой-либо причине была допущена ошибка, можно нажать соответствующую кнопку еще раз и отменить действия предыдущих нажатий.

  3. Метод, который я буду использовать для тестирования, - это нажатие каждой кнопки, чтобы увидеть ответ и эффект. Если кнопки первых игроков работают, не влияя на других игроков, я перейду к следующему игроку, чтобы посмотреть, не влияет ли какая-либо предыдущая кнопка на нажатия кнопок этих игроков. Так и так далее, пока я не достигну последнего игрока в последнем иннинге. Я предполагаю, что мне не нужно будет проверять кнопки каждого отдельного игрока, и что после трех или четырех игроков, работающих правильно, все кнопки игроков будут работать правильно.

** Я использую кнопки MS Excel 2013 и ActiveX для оснований и круг Out и кнопки формы для шаров и ударов.

1 ответ1

0

Не совсем понятно, какая помощь вам нужна. Этот код создаст кнопку на листе:

Sub Creator()
    Dim shp As Shape

    Set shp = ActiveSheet.Shapes.AddShape(1, 100, 10, 60, 60)
    shp.TextFrame.Characters.Text = "Press Me"
    shp.Name = "MyButton"
End Sub

После того, как Shape был создан, назначьте ему этот макрос:

Sub ButtonPressCode()
    Dim shp As Shape, R As Integer, G As Integer, B As Integer

    Set shp = ActiveSheet.Shapes("MyButton")
    With Application.WorksheetFunction
        R = .RandBetween(1, 255)
        G = .RandBetween(1, 255)
        B = .RandBetween(1, 255)
    End With
    shp.Fill.ForeColor.RGB = RGB(R, G, B)
End Sub

с каждым нажатием кнопки форма будет менять цвет:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .