title: Multiple Dependent Drop-Down Lists in Excel VBA
body: <p>I want to create multiple drop down lists with an additional twist.</p>
  <p>The two sheets of the workbook.</p>
  <p><a href="https://i.stack.imgur.com/BBIA1.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/BBIA1.png" alt="enter image description here" /></a></p>
  <p><a href="https://i.stack.imgur.com/2Gkxb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/2Gkxb.png" alt="enter image description here" /></a></p>
  <p>I'm trying to create a dropdown list for cell B6 in the &quot;FORM&quot; sheet which is pulled from cells A2:A4 in the &quot;LISTS&quot; sheet. Based on what is chosen in cell B6, a dropdown list (pulled from the &quot;LISTS&quot; sheet) for cell D6 in the &quot;FORM&quot; sheet will be created. The caveat here is that if &quot;PART&quot; is chosen from the dropdown list in cell B6 of the &quot;FORM&quot; sheet, instead of a generating a dropdown list in D6, I'd like the cell to show &quot;N/A&quot; instead.</p>
  <pre class="lang-vb prettyprint-override"><code>Sub PRODUCT_LIST()
  
  Dim FORM As Worksheet
  Dim LISTS As Worksheet
  Dim PRODUCT As Range
  Dim PRODUCT_LIST As Range
  Dim MODEL As Range
  Dim BIKE_LIST As Range
  Dim CHAIR_LIST As Range
  
  Set FORM = ThisWorkbook.Worksheets(&quot;FORM&quot;)
  Set LISTS = ThisWorkbook.Worksheets(&quot;LISTS&quot;)
  Set PRODUCT = FORM.Range(&quot;B6&quot;)
  Set MODEL = FORM.Range(&quot;D6&quot;)
  Set PRODUCT_LIST = LISTS.Range(&quot;A2:A4&quot;)
  Set BIKE_LIST = LISTS.Range(&quot;B2:B8&quot;)
  Set CHAIR_LIST = LISTS.Range(&quot;C2:C3&quot;)
  
  With PRODUCT.Validation
      .Delete 'delete previous validation
      .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
          Formula1:=&quot;='&quot; &amp; LISTS.Name &amp; &quot;'!&quot; &amp; PRODUCT_LIST.Address
  End With
  
  If PRODUCT.Value = &quot;BIKE&quot; Then
      With MODEL.Validation
          .Delete 'delete previous validation
          .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
              Formula1:=&quot;='&quot; &amp; LISTS.Name &amp; &quot;'!&quot; &amp; CHAIR_LIST.Address
      End With
  ElseIf PRODUCT.Value = &quot;CHAIR&quot; Then
      With MODEL.Validation
          .Delete 'delete previous validation
          .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
              Formula1:=&quot;='&quot; &amp; LISTS.Name &amp; &quot;'!&quot; &amp; BIKE_LIST.Address
      End With
  ElseIf PRODUCT.Value = &quot;PART&quot; Then
      MODEL.Value = &quot;N/A&quot;
  Else
  End If
  End Sub
  </code></pre>
  <p>The dropdown list for B6 works but the dropdown list for D6 seems to be ignoring the conditions that I've placed. Regardless of what I choose in the dropdown list from B6, the dropdown list for D6 is always pulling from CHAIR_LIST.</p>