Макрос, стереть данные подряд (с заблокированными ячейками в смешанных позициях) - PullRequest
0 голосов
/ 20 апреля 2019

Я работаю над многоцелевой таблицей на работе.В одной из электронных таблиц я пытаюсь найти способ добавить кнопку, которая очищала бы некоторые значения ячеек на основе текущей активной ячейки (текущий выбор?).

Макет электронной таблицы: |E7 данные "U" заблокированы |F7 данные "U" |G7 автоматический расчет ("L" ocked) |H7: L7 смешанный контент (значения и список проверки данных) |M7: O7 auto calc "L" |еще два смешанных столбца ...

Я пытаюсь добавить какую-то кнопку, которая бы: при выборе E7 очищали только редактируемые ячейки: E7, F7, H7, I7, J7, K7, L7, P7, R7.

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

Я сейчас используюаналогичное решение в другой электронной таблице: Range ("AN3", "AN15"). Значение = 0 '.Value = "" также работает.Я просто не уверен, как кусать текущий выбор и только определенные ячейки рядом с ним: /

Большое спасибо за вашу помощь <3 </p>

1 Ответ

0 голосов
/ 21 апреля 2019
    Sub Cleardata()
Set ma = ActiveCell.MergeArea
On Error GoTo errHand
If ma = ActiveCell Then
If MsgBox("FORMAT C:/ ?", vbYesNo + vbQuestion) = vbNo Then Exit Sub
Intersect(ActiveCell.EntireRow, Range("E:F,H:L,P:P,R:R")).ClearContents
GoTo final
errHand:
MsgBox "WOW! You are not Trump...you can't grab 'em merged cells..."
Exit Sub
final:
On Error GoTo 0
'End With
End If
End Sub

Это будет мое полное решение, потому что у меня есть другие данные на этом же листе, и таким образом, это предотвратит показ запутывающих сообщений отладки для моих коллег, если они по ошибке нажмут не в том месте или будутПредположим, Excel может сделать это очень много для них xD Еще раз спасибо!

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