title: Multiple items from DropDownList with protected sheet
body: <p>I'm using a spreadsheet with multiple dropdown lists. For one row, I want it to be possible to select multiple items from a DropDownList.</p>
  <p>I'm using the code below, but the problem I have is that the functionality to select multiple items is lost when I protect the workbook.</p>
  <pre><code>&gt; Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Oldvalue As String
  Dim Newvalue As String
  Application.EnableEvents = True
  On Error GoTo Exitsub
  If Target.Address = &quot;$G$5&quot; Or Target.Address = &quot;$G$6&quot; Or Target.Address = &quot;$G$7&quot; Or Target.Address = &quot;$G$8&quot; Or Target.Address = &quot;$G$9&quot; Or Target.Address = &quot;$G$10&quot; Or Target.Address = &quot;$G$11&quot; Or Target.Address = &quot;$G$12&quot; Or Target.Address = &quot;$G$13&quot; Or Target.Address = &quot;$G$14&quot; Or Target.Address = &quot;$G$15&quot; Or Target.Address = &quot;$G$16&quot; Or Target.Address = &quot;$G$17&quot; Or Target.Address = &quot;$G$18&quot; Or Target.Address = &quot;$G$19&quot; Or Target.Address = &quot;$G$20&quot; Or Target.Address = &quot;$G$21&quot; Or Target.Address = &quot;$G$22&quot; Or Target.Address = &quot;$G$23&quot; Or Target.Address = &quot;$G$24&quot; Or Target.Address = &quot;$G$25&quot; Or Target.Address = &quot;$G$26&quot; Or Target.Address = &quot;$G$27&quot; Or Target.Address = &quot;$G$28&quot; Or Target.Address = &quot;$G$29&quot; Or Target.Address = &quot;$G$30&quot; Or Target.Address = &quot;$G$31&quot; Or Target.Address = &quot;$G$32&quot; Or Target.Address = &quot;$G$33&quot; Or Target.Address = &quot;$G$34&quot; Or Target.Address = &quot;$G$35&quot; Or Target.Address = &quot;$G$36&quot; Or Target.Address = &quot;$G$37&quot; Or Target.Address = &quot;$G$38&quot; Or Target.Address = &quot;$G$39&quot; Or Target.Address = &quot;$G$40&quot; Then
    If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then
      GoTo Exitsub
    Else: If Target.Value = &quot;&quot; Then GoTo Exitsub Else
      Application.EnableEvents = False
      Newvalue = Target.Value
      Application.Undo
      Oldvalue = Target.Value
        If Oldvalue = &quot;&quot; Then
          Target.Value = Newvalue
        Else
          If InStr(1, Oldvalue, Newvalue) = 0 Then
              Target.Value = Oldvalue &amp; &quot;, &quot; &amp; Newvalue
        Else:
          Target.Value = Oldvalue
        End If
      End If
    End If
  End If
  Application.EnableEvents = True
  Exitsub:
  Application.EnableEvents = True
  End Sub
  </code></pre>