VBA Excel. Перемещение листа и его отмена

Перемещение выбранного листа рабочей книги на позицию перед другим выбранном листом или после него с помощью кода VBA Excel и отмена перемещения.

Перемещение листа и его отмена

Для реализации примера нужны две кнопки из коллекции «Элементы ActiveX» на рабочем листе «Лист1» и пользовательская форма, как на изображении:

При нажатии кнопки «Перемещение» отображается пользовательская форма, в которой с помощью раскрывающихся списков можно выбрать перемещаемый лист и лист-ориентир, перед или после которого следует вставить перемещаемый лист. Позиция перемещаемого листа относительно листа-ориентира выбирается с помощью переключателей.

Выбранный лист перемещается на новое место после нажатия кнопки «Переместить», а пользовательская форма закрывается. При нажатии кнопки «Отмена перемещения» перемещенный лист возвращается в первоначальное положение.

Код в стандартном модуле

В разделе «Declarations» стандартного модуля «Module1» объявляем глобальные переменные, которые используются в модуле листа «Лист1» и в модуле формы «UserForm1»:

Код в модуле формы

Код VBA Excel, размещенный в модуле пользовательской формы «UserForm1»:

Код в модуле листа

Код VBA Excel, размещенный в модуле листа «Лист1»:


Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.

Добавить комментарий

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