• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Fout melding bij keuzevak met meerdere keuzes.

Status
Niet open voor verdere reacties.

Rapaille

Verenigingslid
Lid geworden
19 nov 2014
Berichten
63
Hallo,

Ik heb in een lijst kolommen waarin met behulp van een keuzelijst en gegevensvalidatie meerdere keuzes per cel gemaakt kunnen worden. Een VBA code heb ik hier al gevonden en deze werkt goed. Het enige probleem is dat ik nu bij meerdere keuzes een foutmelding (rood driehoekje in de linker bovenhoek van de cel) krijg dat de invoer niet voldoet aan de validatieregels. Iemand een idee hoe ik dit kan oplossen?

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range
Dim oldVal As String
Dim newVal As String
Dim lUsed As Long
If Target.Count > 1 Then GoTo exitHandler

On Error Resume Next
Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation)
On Error GoTo exitHandler

If rngDV Is Nothing Then GoTo exitHandler

If Intersect(Target, rngDV) Is Nothing Then
'do nothing
Else
Application.EnableEvents = False
newVal = Target.Value
Application.Undo
oldVal = Target.Value
Target.Value = newVal
If Target.Column = 19 Or 20 Or 21 Then
If oldVal = "" Then
'do nothing
Else
If newVal = "" Then
'do nothing
Else
lUsed = InStr(1, oldVal, newVal)
If lUsed > 0 Then
If Right(oldVal, Len(newVal)) = newVal Then
Target.Value = Left(oldVal, Len(oldVal) - Len(newVal) - 2)
Else
Target.Value = Replace(oldVal, newVal & ", ", "")
End If
Else
Target.Value = oldVal _
& ", " & newVal
End If

End If
End If
End If
End If

exitHandler:
Application.EnableEvents = True

Columns("S:U").EntireColumn.AutoFit
End Sub


Alvast bedankt voor het meedenken.

Met vriendelijke groet,

Hans
 
Zet in de eigenschappen van de validatie het tonen van fouten uit.

N.B.:
Als je code plaatst zet dat even in codetags.
 
Dag Edmoor,

Bedankt voor je snelle antwoord. Mijn excuses voor de ontbrekende codetags. Ik had het uitzetten van het tonen van de validatie fouten ook al bedacht, maar dat is toch een persoonlijke instelling. Wanneer iemand anders de sheet opent, dan ziet hij de foutmeldingen wel.

De code heb ik uit de file 'Vergaderlocaties rev r3000.xlsm' gehaald bij onderstaande vraag. En in deze file doet hij het niet.

http://www.helpmij.nl/forum/showthread.php/779273-Keuzelijst-met-meerdere-keuzemogelijkheden
 
Dat is geen persoonlijke instelling maar een instelling voor het document. Plaasts eens een voorbeeld document.
 
Het is toch veel verstandiger/eenvoudiger om, als twee keuzes mogelijk zijn, hiervoor 2 kolommen te nemen ?
De keuzemogelijkheden van de tweede kolom hoeven dan alleen afhankelijk te worden gemaakt van de keuze in de eerste.

NB. Zet altijd gegevens in cel A1. Gegevens zijn belangrijker dan opmaak.
 
Laatst bewerkt:
Het gaat hier om landen waar het product naar toegaat. Dit kunnen er wel zes zijn.
 
Mijn Excelversie heeft voor ieder werkblad wel 16384 kolommen; dus dat lijkt me geen probleem.
Voor verdere verwerking is 1 gegeven per veld/kolom ook alleen maar gunstig.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan