Список проверки данных Очистить - PullRequest
0 голосов
/ 19 ноября 2018

В настоящее время у меня есть три поля данных. Два - это списки проверки данных, а другой - просто обычная ячейка, в которую я ввожу числовое значение. Выбрав нужные данные, я нажимаю кнопку ActiveX, которая копирует данные в другую электронную таблицу. Как это выглядит в настоящее время:
What it currently looks like

У меня проблема в том, что я хочу нажать кнопку, чтобы поля очистились, но сохранили их информацию. Я пробовал оба .Clear и .ClearContents, но они полностью удаляют мои списки проверки данных. Я просто хочу, чтобы они в следующий раз вернулись в пустое состояние.

То, что я хочу сбросить на:
What I want it to reset to

Есть ли способ сделать это или мне нужно переосмыслить всю электронную таблицу и использовать VBA?

1 Ответ

0 голосов
/ 19 ноября 2018

VBA: если myCell - это ячейка, которую вы хотите очистить, используйте

 myCell.FormulaR1C1 = ""

Редактировать : после комментариев ниже и предполагая, что 3 поля из снимков экрана вышеc4, c7 и c10 Я бы порекомендовал изменить ваш саб так:

Private Sub Command5Button21_Click()
    Dim s1, s2
    Set s1 = Worksheets("Master")
    Set s2 = Worksheets("Sheet1")

    With s1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).EntireRow
        .Cells(, "a").Value = s2.Range("p20").Value
        .Cells(, "b").Value = s2.Range("p21").Value
        .Cells(, "c").Value = s2.Range("c4").Value
        .Cells(, "d").Value = s2.Range("c7").Value
        .Cells(, "e").Value = s2.Range("c10").Value
        s2.Range("c4").FormulaR1C1 = ""
        s2.Range("c7").FormulaR1C1 = ""
        s2.Range("c10").FormulaR1C1 = ""
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...