1

У меня есть и таблица Excel, и мне нужно сделать кнопку, которая удаляет всю строку, в которой находится кнопка.

Допустим, у меня есть кнопка на ячейке G7. Когда я нажимаю на нее, я хочу, чтобы вся строка 7 была удалена, а все под ней сдвинуто вверх.

Это может быть легко закодировано, чтобы удалить строку 7, но я хочу, чтобы кнопка находилась в каждой строке до ~ 30, поэтому в G1, G2, G3, ..., G30, и когда я нажимаю ее, я хочу, чтобы она удалить только строку, в которой он находится. Пример: я нажимаю кнопку на G7, все в строке 7 смещается вверх, поэтому строка 8 становится строкой 7 и так далее. Затем я нажимаю кнопку в G9 и хочу удалить строку 9 (а не 10, как это было до первого нажатия кнопки в G7).

Возможно ли это сделать?

1 ответ1

2

чтобы кнопка выполнялась на основе ее topleftcell.row

s = ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row даст вам номер строки как s так что просто подключите его туда, где ваше удаление

используя application.caller вы должны иметь возможность выполнять все кнопки одним и тем же макросом, но я не на 100%. Проверьте ссылку здесь

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