перемещаться по определенным значениям в ячейке с помощью клавиши со стрелкой - PullRequest
1 голос
/ 06 октября 2011

Я программировал раньше, но я новичок в , поэтому, пожалуйста, помогите мне.

Я хочу, чтобы пользователь выбрал ячейку (любую ячейку в столбце) на рабочем листе, а затем он / она должен иметь возможность нажимать клавиши со стрелками «ВВЕРХ» или «ВНИЗ» для перемещения по значениям.

Это похоже на выпадающее меню.

  1. Например, у меня были бы предопределенные значения, такие как «STOP», «GO», «START».
  2. Когда пользователь выбирает ячейку и нажимает клавишу со стрелкой вверх один раз, значение ячейки меняется на «GO», снова нажимается клавиша со стрелкой, значение изменяется на «STOP» и т. Д ....

спасибо за любую помощь!

1 Ответ

3 голосов
/ 06 октября 2011

часть 1

  1. Щелкните правой кнопкой мыши вкладку листа
  2. Посмотреть код
  3. Скопируйте и вставьте код ниже

Этот код указывает Excel запускать макросы со стрелками вверх и вниз только на этом листе. Код деактивируется при выходе с листа

Private Sub Worksheet_Activate()
    Application.OnKey "{UP}", "UpOne"
    Application.OnKey "{DOWN}", "DownOne"
End Sub

Private Sub Worksheet_Deactivate()
    Application.OnKey "{UP}"
    Application.OnKey "{DOWN}"
End Sub

часть 2

  1. Нажмите ALt & F11 вместе, чтобы перейти в редактор Visual Basic
  2. Вставить модуль
  3. Скопируйте и вставьте код ниже
  4. Нажмите ALt & F11, чтобы вернуться в Excel

      Sub UpOne()
            Select Case ActiveCell.Value
            Case ""
                ActiveCell.Value = "Ready"
            Case "Ready"
                ActiveCell.Value = "Set"
            Case "Set"
                ActiveCell.Value = "Go"
            End Select
        End Sub
    
    
     Sub DownOne()
        Select Case ActiveCell.Value
        Case ""
            ActiveCell.Value = "Go"
        Case "Go"
            ActiveCell.Value = "Set"
        Case "Set"
            ActiveCell.Value = "Ready"
        End Select
    End Sub
    

Ваш код будет циклически изменяться с

пусто (если пусто) - 1) готово - 2) установлено - 3) идти (для стрелки вверх)

пусто (если пусто) - 1) перейти - 2) установить - 3) готово (для стрелки вниз)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...