Ga naar hoofdinhoud

Hoe te voorkomen dat kopiëren en plakken over cel met vervolgkeuzelijst in Excel?

Voor een cel met een vervolgkeuzelijst voor gegevensvalidatie, wanneer inhoud van een andere cel wordt gekopieerd en erin wordt geplakt, verdwijnt de vervolgkeuzelijst en wordt deze vervangen door de nieuwe plakinhoud. In sommige gevallen wilt u voorkomen dat u andere inhoud over de cel met vervolgkeuzelijst kopieert en plakt, wat zou u doen om ermee om te gaan? In dit artikel krijgt u een VBA-methode om met dit probleem om te gaan.

Voorkom kopiëren en plakken over cel met vervolgkeuzelijst in Excel


Voorkom kopiëren en plakken over cel met vervolgkeuzelijst in Excel

1. Open het werkblad met de vervolgkeuzelijstcel waarvan u kopiëren en plakken wilt voorkomen.

2. druk op anders + F11 toetsen tegelijkertijd om het Microsoft Visual Basic-toepassingen venster.

3. In de Microsoft Visual Basic-toepassingen dubbelklik op de huidige werkbladnaam in het linkerdeelvenster en kopieer en plak de onderstaande VBA-code in de code-editor. Zie screenshot:

VBA-code: voorkom kopiëren en plakken over cel met vervolgkeuzelijst

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 anders + Q toetsen om het Microsoft Visual Basic-toepassingen venster.

5. Wanneer u inhoud in een cel met een vervolgkeuzelijst plakt, verschijnt er een dialoogvenster om u eraan te herinneren dat plakken niet is toegestaan. Zie screenshot:

Note: Deze VBA werkt gewoon in plakken met één cel. Als u in meerdere cellen kopieert en plakt, werkt het niet.

Maak eenvoudig een vervolgkeuzelijst met selectievakjes in Excel:

Het Vervolgkeuzelijst met selectievakjes nut van Kutools for Excel kan u helpen eenvoudig een vervolgkeuzelijst te maken met selectievakjes in een opgegeven bereik, huidig ​​werkblad, huidige werkmap of alle geopende werkmappen op basis van uw behoeften.
Download nu het volledige gratis 30-daagse gratis parcours van Kutools voor Excel!


Gerelateerde artikelen:

Hoe maak ik een vervolgkeuzelijst met meerdere selectievakjes in Excel?
Veel Excel-gebruikers hebben de neiging om een ​​vervolgkeuzelijst te maken met meerdere selectievakjes om meerdere items uit de lijst per keer te selecteren. Eigenlijk kunt u met Gegevensvalidatie geen lijst met meerdere selectievakjes maken. In deze zelfstudie laten we u twee methoden zien om een ​​vervolgkeuzelijst met meerdere selectievakjes in Excel te maken. Deze tutorial biedt de methode om het probleem op te lossen.

Maak een vervolgkeuzelijst vanuit een andere werkmap in Excel
Het is vrij eenvoudig om een ​​vervolgkeuzelijst voor gegevensvalidatie te maken tussen werkbladen in een werkmap. Maar wat zou u doen als de lijstgegevens die u nodig hebt voor de gegevensvalidatie in een andere werkmap terechtkomen? In deze zelfstudie leert u hoe u in detail een vervolgkeuzelijst kunt maken vanuit een andere werkmap in Excel.

Maak een doorzoekbare vervolgkeuzelijst in Excel
Voor een vervolgkeuzelijst met talloze waarden is het vinden van een goede geen gemakkelijke taak. Eerder hebben we een methode geïntroduceerd voor het automatisch aanvullen van de vervolgkeuzelijst wanneer u de eerste letter in de vervolgkeuzelijst invoert. Naast de functie voor automatisch aanvullen, kunt u de vervolgkeuzelijst ook doorzoekbaar maken om de werkefficiëntie te verbeteren door de juiste waarden in de vervolgkeuzelijst te vinden. Probeer de methode in deze tutorial om de vervolgkeuzelijst doorzoekbaar te maken.

Vul automatisch andere cellen in bij het selecteren van waarden in de vervolgkeuzelijst van Excel
Stel dat u een vervolgkeuzelijst heeft gemaakt op basis van de waarden in celbereik B8: B14. Wanneer u een waarde in de vervolgkeuzelijst selecteert, wilt u dat de overeenkomstige waarden in celbereik C8: C14 automatisch in een geselecteerde cel worden ingevuld. Om het probleem op te lossen, zullen de methoden in deze tutorial je een plezier doen.

Meer tutorials voor vervolgkeuzelijst ...

Beste Office-productiviteitstools

Populaire functies: Zoek, markeer of identificeer duplicaten   |  Verwijder lege rijen   |  Combineer kolommen of cellen zonder gegevens te verliezen   |   Ronde zonder formule ...
Super opzoeken: Meerdere criteria VLookup    VLookup met meerdere waarden  |   VOpzoeken over meerdere bladen   |   Fuzzy opzoeken ....
Geavanceerde vervolgkeuzelijst: Maak snel een vervolgkeuzelijst   |  Afhankelijke vervolgkeuzelijst   |  Multi-select vervolgkeuzelijst ....
Kolom Beheerder: Voeg een specifiek aantal kolommen toe  |  Kolommen verplaatsen  |  Schakel de zichtbaarheidsstatus van verborgen kolommen in  |  Vergelijk bereiken en kolommen ...
Uitgelichte functies: Raster focus   |  Ontwerpweergave   |   Grote formulebalk    Werkmap- en bladbeheer   |  resource Library (Auto-tekst)   |  Datumkiezer   |  Combineer werkbladen   |  Cellen coderen/decoderen    Stuur e-mails per lijst   |  Super filter   |   Speciaal filter (filter vet/cursief/doorhalen...) ...
Top 15 gereedschapsets12 Tekst Tools (toe te voegen tekst, Tekens verwijderen, ...)   |   50+ tabel Types (Gantt Chart, ...)   |   40+ Praktisch Formules (Bereken leeftijd op basis van verjaardag, ...)   |   19 Invoeging Tools (QR-code invoegen, Afbeelding invoegen vanaf pad, ...)   |   12 Camper ombouw Tools (Getallen naar woorden, Currency Conversion, ...)   |   7 Samenvoegen en splitsen Tools (Geavanceerd Combineer rijen, Gespleten cellen, ...)   |   ... en meer

Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar efficiëntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen.  Klik hier om de functie te krijgen die u het meest nodig heeft...

kte tabblad 201905


Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
Comments (12)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I works BUT after you put the code you cannot UNDO anything. Not a single step back is allowed.
This comment was minimized by the moderator on the site
No, I did not figure it out. I didn't try to resolve after a while.
This comment was minimized by the moderator on the site
did you manage to resolve the issue of copying and pasting into multiple cells? Thanks in advance!
This comment was minimized by the moderator on the site
Hi Dilip, are you able to fix the issue of allowing data using paste values
This comment was minimized by the moderator on the site
Hi Dilip, are you able to fix the issue of allowing data using paste values..i am also facing the same issue..help me on this please
This comment was minimized by the moderator on the site
Thank you very much !! works fine for me !!! copying into a single cell is restricted. but if i copy a list of cells and paste.., the paste is accepted. let me see if i can tune this up ..thanks anyways
This comment was minimized by the moderator on the site
Jepson, did you manage to resolve the issue of copying and pasting into multiple cells? Thanks in advance!
This comment was minimized by the moderator on the site
Private Sub Worksheet_Change(ByVal Target As Range) Dim xValue As String Dim xCheck1 As String Dim xCheck2 As String If Target.Count > 1 Then Exit Sub End If Application.EnableEvents = False xValue = Target.Value On Error Resume Next xCheck1 = Target.Validation.InCellDropdown On Error GoTo 0 Application.Undo On Error Resume Next xCheck2 = Target.Validation.InCellDropdown On Error GoTo 0 If xCheck1 = xCheck2 Then Target = xValue Else MsgBox "No pasting allowed!" End If Application.EnableEvents = True End Sub This Macro not work when copy from different workbook or worksheet then so please tell me how to avoid these things also
This comment was minimized by the moderator on the site
Hi, above mention vba code is not run.kindly resolve.
This comment was minimized by the moderator on the site
Hi, While I running this macro I got this debug error "Application.Undo". Pls resolve this ASAP
This comment was minimized by the moderator on the site
This works but when I paste value this is allowing data which is not from the drop down list. Any way to restrict any value which is not from the list.
This comment was minimized by the moderator on the site
Hi Dilip, Did you able to resolve the issue, i too having similar issue. I have to allow copy,paste only for drop down values in the data validation cell other i have to restrict. Can you share your solution. Thanks Rao
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations