Hoe voorkom je kopiëren en plakken over een cel met een keuzelijst in Excel?
Voor een cel met een gegevensvalidatie-keuzelijst zal, wanneer je inhoud kopieert vanuit een andere cel en deze erin plakt, de keuzelijst verdwijnen en vervangen worden door de nieuwe geplakte inhoud. In sommige gevallen wil je voorkomen dat andere inhoud wordt gekopieerd en geplakt over de cel met de keuzelijst. Wat zou je doen om dit probleem op te lossen? In dit artikel krijg je een VBA-methode om dit probleem aan te pakken.
Voorkom kopiëren en plakken over een cel met een keuzelijst in Excel
Voorkom kopiëren en plakken over een cel met een keuzelijst in Excel
1. Open het werkblad met de cel met de keuzelijst waarvoor je wilt voorkomen dat er gekopieerd en geplakt wordt.
2. Druk gelijktijdig op Alt + F11 om het Microsoft Visual Basic Applications-venster te openen.
3. Dubbelklik in het Microsoft Visual Basic Applications-venster op de naam van het huidige werkblad in het linkerpaneel, en kopieer en plak vervolgens de onderstaande VBA-code in de Code-editor. Zie screenshot:
VBA-code: Voorkom kopiëren en plakken over een cel met een keuzelijst
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. Druk op Alt + Q om het Microsoft Visual Basic Applications-venster te sluiten.
5. Wanneer je inhoud plakt in een cel met een keuzelijst, verschijnt er een dialoogvenster om je eraan te herinneren dat het plakken niet is toegestaan. Zie screenshot:
Opmerking: Deze VBA werkt alleen bij het plakken in één cel. Als je meerdere cellen tegelijk kopieert en plakt, werkt het niet.
Maak eenvoudig een keuzelijst met selectievakjes in Excel:
De Keuzelijst met selectievakjes functie van Kutools voor Excel kan je helpen om eenvoudig een keuzelijst met selectievakjes te maken in een gespecificeerd bereik, huidig werkblad, huidig werkboek of alle geopende werkboeken, afhankelijk van je behoeften.
Download nu de volledige versie 30-dagen gratis proefversie van Kutools voor Excel!
Gerelateerde artikelen:
Hoe maak je een keuzelijst met meerdere selectievakjes in Excel?
Veel Excel-gebruikers hebben de neiging om een keuzelijst met meerdere selectievakjes te maken om meerdere items tegelijk uit de lijst te selecteren. Eigenlijk kun je geen lijst met meerdere selectievakjes maken met Gegevensvalidatie. In deze tutorial laten we je twee methoden zien om een keuzelijst met meerdere selectievakjes te maken in Excel. Deze tutorial biedt de methode om het probleem op te lossen.
Maak een keuzelijst vanuit een ander werkboek in Excel
Het is vrij eenvoudig om een gegevensvalidatie-keuzelijst te maken tussen werkbladen binnen een werkboek. Maar als de lijstgegevens die je nodig hebt voor de gegevensvalidatie zich in een ander werkboek bevinden, wat doe je dan? In deze tutorial leer je hoe je een keuzelijst maakt vanuit een ander werkboek in Excel in detail.
Maak een doorzoekbare keuzelijst in Excel
Voor een keuzelijst met talloze waarden is het vinden van de juiste niet eenvoudig. Eerder hebben we een methode geïntroduceerd om automatisch aan te vullen wanneer je de eerste letter invoert in het keuzelijstvak. Naast de functie voor automatisch aanvullen, kun je ook de keuzelijst doorzoekbaar maken om de werkzaamheden te verbeteren bij het vinden van de juiste waarden in de keuzelijst. Voor het maken van een doorzoekbare keuzelijst, probeer dan de methode in deze tutorial.
Automatisch andere cellen invullen bij het selecteren van waarden in een Excel-keuzelijst
Laten we zeggen dat je een keuzelijst hebt gemaakt op basis van de waarden in celbereik B8:B14. Wanneer je een waarde selecteert in de keuzelijst, wil je dat de bijbehorende waarden in celbereik C8:C14 automatisch worden ingevuld in een geselecteerde cel. Om dit probleem op te lossen, zullen de methoden in deze tutorial je helpen.
Beste Office-productiviteitstools
Versterk je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die je het meest nodig hebt...
Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
- Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!