Delen via

Gegevensvalidatie: cellen beschermen tegen plakken

Anoniem
2017-05-04T11:38:52+00:00

Ik heb in een excel-worksheet een aantal cellen waarin enkel een keuze mag gemaakt worden uit de waardes in een keuzelijst. De waardes heb ik beperkt via gegevensvalidatie en indien ik een ander waarde hierin prober te typen, krijg ik een correcte foutmelding en wordt dit niet toegestaan.

Ik kan echter wel zonder problemen de inhoud van een andere cel hierin plakken.

Hoe kan ik voorkomen dat dit gebeurt?

Microsoft 365 en Office | Excel | Voor thuisgebruik | Windows

Vergrendelde vraag. Deze vraag is gemigreerd vanuit de Microsoft Ondersteuning-community. U kunt met een stem aangeven of de inhoud nuttig is, maar u kunt geen opmerkingen of antwoorden toevoegen of de vraag volgen.

0 opmerkingen Geen opmerkingen

Antwoord geaccepteerd door vraagauteur

Anoniem
2017-05-04T13:47:27+00:00

Hallo Kim_VT

Er bestaat hiervoor geen standaardfunctie binnen Excel die door dit forum ondesteund wordt. Je zou je vraag aan Microsoft Developer Network-Community kunnen stellen voor hulp met het programmeren van een oplossing voor het scenario dat je noemt.

Met vriendelijke groet,

Jules

Was dit antwoord nuttig?

0 opmerkingen Geen opmerkingen

4 extra antwoorden

Sorteren op: Meest nuttig
  1. Anoniem
    2017-05-05T07:25:23+00:00

    Kim,

    Ik neem aan dat je werkblad beveiligd is, anders zal je cel bij plakken worden overschreven met ook de opmaak van die andere cel en zal deze ook zijn validatie verliezen.

    Je kunt dan de code van JP zo uitbreiden, zodat je waarden die aan de validatie voldoen wel kunt plakken, maar andere waarden niet.

    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

        Application.EnableEvents = False

        If Target.Address(0, 0) = "A1" Then

            If Not Target.Validation.Value Then

                Application.Undo

            End If

        End If

        Application.EnableEvents = True

     End Sub

    Jan

    Was dit antwoord nuttig?

    0 opmerkingen Geen opmerkingen
  2. Anoniem
    2017-05-05T05:50:36+00:00

    Bedankt JP, ga ik zo dadelijk eens uitproberen.

    Was dit antwoord nuttig?

    0 opmerkingen Geen opmerkingen
  3. Anoniem
    2017-05-04T17:12:18+00:00

    Dag Kim,

    Naar mijn mening is hier geen eenvoudige/standaard oplossing voor, met VBA zie ik wel mogelijkheden maar niet zeker of alles hiermee kan opgevangen worden. De basis:

    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

       Application.EnableEvents = False

       If Target.Address(0, 0) = "A1" Then

          Application.Undo

       End If

       Application.EnableEvents = True

    End Sub

    Heb dit getest en het laat niet toe een andere waarde, ook al staat die in de validatielijst, te plakken. Misschien een begin.

    Was dit antwoord nuttig?

    0 opmerkingen Geen opmerkingen
  4. Anoniem
    2017-05-04T17:01:58+00:00

    Dag Kim,

    Naar mijn mening is hier geen eenvoudige/standaard oplossing voor, met VBA zie ik wel mogelijkheden maar niet zeker of alles hiermee kan opgevangen worden. De basis:

    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

       Application.EnableEvents = False

       If Target.Address(0, 0) = "A1" Then

          Application.Undo

       End If

       Application.EnableEvents = True

    End Sub

    Heb dit getest en het laat niet toe een andere waarde, ook al staat die in de validatielijst, te plakken. Misschien een begin.

    Was dit antwoord nuttig?

    0 opmerkingen Geen opmerkingen