Записать значение ячейки на листе, когда пользователь щелкает правой кнопкой мыши вкладку и удаляет? - PullRequest
0 голосов
/ 27 апреля 2018

Я искал, но не могу найти ссылку на то, что я пытаюсь выполнить.

Фон
Я использую рабочий лист (рабочий лист № 2) для ввода определенных данных для модели самолета. Когда данные верны, я запускаю макрос, чтобы скопировать эти данные в другой лист и переименовать в зашифрованную с именем самолета. Я делаю это на столько самолетов, сколько мне нужно. Все созданные листы помещаются между двумя другими пустыми листами с именами Начало и Конец.

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

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

Есть ли способ получить имя рабочего листа, когда им манипулируют таким образом, чтобы я мог использовать эту информацию для обновления данных на рабочем листе №2 с помощью?

1 Ответ

0 голосов
/ 27 апреля 2018

Существует событие уровня рабочего стола, которое называется BeforeDelete.

  • Щелкните правой кнопкой мыши на вкладке и выберите View Code

  • В раскрывающемся списке General в верхнем левом углу редактора VBA выберите «Рабочий лист», а в раскрывающемся списке (Declarations) в верхнем правом углу выберите BeforeDelete.

Это создаст пустую процедуру, в которую вы можете добавить свой код:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

img


Дополнительная информация:

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