• 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.

Prefix & Suffix komma gescheiden waardes

Status
Niet open voor verdere reacties.

mause01

Gebruiker
Lid geworden
19 okt 2012
Berichten
75
Ik heb de volgende code in mijn sheet1 staan.

Ik wil graag het volgende hebben.
Wanneer er een waarde in de cel staat moet deze GEEN haakjes krijgen "WAARDE"
Wanneer er waarde staat gescheiden met een komma dan moet deze wel haakjes krijgen. "{WAARDE,WAARDE}"

Er kan ook voorkomen dat er meerdere keren een waarde in de cel gezet wordt welke gescheiden wordt doormiddel van een"," (komma).
Dan moet als prefix eenhaakje "{" komen en als suffix een haakje "}".

Voorbeeld:"{WAARDE,WAARDE,WAARDE,WAARDE}"

Hoe los ik dat op.


Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim rng As Range        'Main
    Dim aCell As Range      'Main
    
    On Error GoTo Whoa
    Application.EnableEvents = False
    
'ExtAccessLevelIDList                                                   !!!!!!!!!!!!!!!!!CHECK NEEDED!!!!!!!!!!!!!!!!
   [B] Set rng = Range("A2:A5000")
    If Not Application.Intersect(Target, rng) Is Nothing Then
            For Each aCell In rng
                If Not aCell.Value Like "{*}" And aCell.Value <> "" Then
                        aCell = "{" & aCell.Value & "}"[/B]
                     End If
                 Next
            End If


'Letscontinue
Letscontinue:
    Application.EnableEvents = True
    Exit Sub
Set rng = Nothing
Whoa:
    MsgBox Err.Description
    Resume Letscontinue
End Sub



Ik heb een test sheetje willen maken maar ik krijg er code niet opgeslagen, sorry daarvoor.
 
Laatst bewerkt:
Ik neem niet aan dat je bij iedere wijziging in kolom A alle 4999 cellen wilt gaan controleren. Dan is dit voldoende:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Application.Intersect(Target, Range("A2:A5000")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If left(Target.Value, 1) <> "{" And InStr(1, Target.Value, ",") > 1 Then
        Target.Value = "{" & Target.Value & "}"
    End If
    Application.EnableEvents = True
End Sub


Wat bedoel je met dat je de code niet opgeslagen krijgt?
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan