Как да предотвратите копиране и поставяне върху клетка с падащ списък в Excel?
За клетка с падащ списък за валидиране на данни, когато копирате съдържание от друга клетка и го поставите в нея, падащият списък ще изчезне и ще бъде заменен с новото съдържание за поставяне. В някои случаи искате да предотвратите копиране и поставяне на друго съдържание върху клетката с падащ списък, какво бихте направили, за да се справите с това? В тази статия ще получите VBA метод за справяне с този проблем.
Предотвратяване на копиране и поставяне върху клетка с падащ списък в Excel
Предотвратяване на копиране и поставяне върху клетка с падащ списък в Excel
1. Отворете работния лист с клетката от падащ списък, която искате да предотвратите копирането и поставянето.
2. Натиснете Друг + F11 клавиши едновременно, за да отворите Microsoft Visual Basic приложения прозорец.
3. В Microsoft Visual Basic приложения прозорец, щракнете двукратно върху името на текущия работен лист в левия прозорец, след което копирайте и поставете кода VBA по-долу в редактора на кода. Вижте екранна снимка:
VBA код: Предотвратяване на копиране и поставяне върху клетка с падащ списък
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20200903
Dim xValue As String
Dim xCheck1 As String
Dim xCheck2 As String
Dim xRg As Range
Dim xArrCheck1() As String
Dim xArrCheck2() As String
Dim xArrValue()
Dim xCount, xJ As Integer
Dim xBol As Boolean
' If Target.Count > 1 Then
' Exit Sub
' End If
xCount = Target.Count
ReDim xArrCheck1(1 To xCount)
ReDim xArrCheck2(1 To xCount)
ReDim xArrValue(1 To xCount)
Application.EnableEvents = False
On Error Resume Next
xJ = 1
For Each xRg In Target
xArrValue(xJ) = xRg.Value
xArrCheck1(xJ) = xRg.Validation.InCellDropdown
xJ = xJ + 1
Next
Application.Undo
xJ = 1
For Each xRg In Target
xArrCheck2(xJ) = xRg.Validation.InCellDropdown
xJ = xJ + 1
Next
xBol = False
For xJ = 1 To xCount
If xArrCheck2(xJ) <> xArrCheck1(xJ) Then
xBol = True
Exit For
End If
Next
If xBol Then
MsgBox "The selected cells containg data validation drop-down lists, no pasting allowed."
Else
xJ = 1
For Each xRg In Target
xRg.Value = xArrValue(xJ)
xJ = xJ + 1
Next
End If
Application.EnableEvents = True
End Sub
4. Натиснете Друг + Q клавиши за излизане от Microsoft Visual Basic приложения прозорец.
5. Когато поставите съдържание в клетка с падащ списък, ще се появи диалогов прозорец, за да ви напомни, че поставянето не е разрешено. Вижте екранна снимка:
Забележка: Този VBA работи само при поставяне на една клетка. Ако копирате и поставите в няколко клетки, няма да работи.
Създайте лесно падащ списък с квадратчета за отметка в Excel:
- Падащ списък с квадратчета за отметка полезност на Kutools за Excel може да ви помогне лесно да създадете падащ списък с квадратчета за отметка в определен диапазон, текущ работен лист, текуща работна книга или всички отворени работни книги въз основа на вашите нужди.
Изтеглете пълната 30-дневна безплатна пътека на Kutools за Excel сега!
Още по темата:
Как да създадете падащ списък с множество квадратчета за отметка в Excel?
Много потребители на Excel са склонни да създават падащ списък с множество квадратчета за отметка, за да избират няколко елемента от списъка наведнъж. Всъщност не можете да създадете списък с множество квадратчета за отметка с валидиране на данни. В този урок ще ви покажем два метода за създаване на падащ списък с множество квадратчета за отметка в Excel. Този урок предоставя метода за решаване на проблема.
Създайте падащ списък от друга работна книга в Excel
Доста лесно е да създадете падащ списък за валидиране на данни сред работни листове в работна книга. Но ако списъчните данни, от които се нуждаете за валидирането на данните, се намират в друга работна книга, какво бихте направили? В този урок ще научите как да създадете падащ собствен списък от друга работна книга в Excel в подробности.
Създайте падащ списък с възможност за търсене в Excel
За падащ списък с многобройни стойности намирането на подходящ не е лесна работа. По-рано въведохме метод за автоматично попълване на падащия списък, когато въведете първата буква в падащото поле. Освен функцията за автоматично довършване, можете също да направите падащия списък достъпен за търсене, за да подобрите работната ефективност при намиране на правилните стойности в падащия списък. За да направите падащия списък годен за търсене, опитайте метода в този урок.
Автоматично попълване на други клетки при избиране на стойности в падащия списък на Excel
Да приемем, че сте създали падащ списък въз основа на стойностите в диапазона от клетки B8:B14. Когато избирате която и да е стойност в падащия списък, искате съответните стойности в диапазона от клетки C8:C14 да бъдат автоматично попълнени в избрана клетка. За решаването на проблема, методите в този урок ще ви направят услуга.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!