Можно ли иметь кнопку «сбросить форму» в форме Excel? - PullRequest
2 голосов
/ 30 августа 2011

Есть ли способ сделать кнопку сброса в форме таблицы Excel? То есть я хотел бы упростить очистку всех введенных данных, но не каких-либо формул.

РЕДАКТИРОВАТЬ: Дальнейшее объяснение: На самом деле это просто таблица. Когда мы просчитываем деньги каждое утро, у нас есть форма, в которой мы записываем различные номиналы денег, а затем складываем их все (затем помещая эти цифры в калькулятор). Я полагаю, что это сэкономит время и уменьшит количество ошибок, если мы просто введем итоги в электронную таблицу и позволим Excel сделать за нас математику. Однако некоторые люди не очень технически грамотны, поэтому я хотел бы убедиться, что формулы не были случайно удалены.

Ответы [ 3 ]

7 голосов
/ 30 августа 2011

Не существует общей «кнопки сброса», поэтому вы должны сделать ее самостоятельно.

Добавьте кнопку на свой лист и отредактируйте ее код в модуле листа:

Private Sub CommandButton1_Click()
    ClearInput
End Sub

В модуле (обычный код) создайте Sub, который делает то, что вы хотите:

Sub ClearInput()

    Dim rngInput As Range
    Set rngInput = Sheet1.Range("B1:C4") ' Or wherever the user input goes
    rngInput.ClearContents

End Sub

Более гибкое решение состоит в том, чтобы иметь на вашем листе именованный диапазон (называемый, например, «UserInput»), который охватывает все ячейки, которые в дальнейшем необходимо будет очистить. Затем вы можете заменить оператор Set в приведенном выше коде на Set rngInput = Sheet1.Range("UserInput").

2 голосов
/ 30 августа 2011

После вашего комментария "Однако некоторые люди не очень технически грамотны, поэтому я хотел бы убедиться, что формулы не были случайно удалены." (который вы можете захотеть перенести на вопрос):

Если вам нужно убедиться, что пользователи случайно не вводят данные в другие ячейки, чем им нужно, вы захотите защитить лист и просто снять защиту входных ячеек (ячейки по умолчанию переносятся). При защите листа разрешите «Выбрать разблокированные ячейки», но отключите «Выбрать заблокированные ячейки». Если вы просто пытаетесь бороться с несчастными случаями, а не со злобой, мне, вероятно, не нужен пароль, но это тоже вариант.

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

0 голосов
/ 30 августа 2011

Вы можете использовать VBA для этого.Не видя вашу электронную таблицу, я не могу дать вам никаких подробностей, но вы можете сделать это, чтобы установить все ячейки в столбцах А строк 1-15 в пустую строку.

ActiveSheet.Range("A1", "A15").Value = ""
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...