¿Cómo sincronizar 7 combobox en vba?
Estoy trabajando en un formulario donde tengo 7 combobox que tienen que estar relacionados:
El formulario es un buscador que va por orden de la siguiente manera:
Orden jerárquico
1.- Empresa (1 combobox con nombre CLIENTEXISTENTE)
2.- Producto (2 combobox relacionados: código, descripción de material con nombres NPARTEXISTENTE, PROD)
3.-Requerimientos de material (4 combobox que contienen los materiales que necesita el producto los cuales tienen los nombres de CÓDIGO 1,2,3,4 respectivamente)
Los datos están almacenados en una base de datos que contienen los campos de la sig manera:
La base de datos tiene la información en las columnas de siguiente manera:
1. Empresa
2. Producto (no. Parte)
3. Descripción de producto
4. Material 1( Comp 1)
5. Consumo material 1 (Consumo 1)
6. Material 2 (Comp 2)
7. Consumo material 2 (Consumo 2)
8. Material 3( Comp 3)
9. Consumo material 3 (Consumo 3)
10. Material 4( Comp 4)
11. Consumo material 4 (Consumo 4)
La caratula del formulario es el sig:
La idea del formulario es que pueda buscar productos y se desplieguen los materiales que contiene el producto en los combobox. Para el cual desarrolle el sig código que está dentro del evento combobox No. Parte que es el que realiza la búsqueda final de los materiales:
Private Sub NPARTEXISTENTE_Change()
Dim ufila As Integer
Dim i As Integer
CODIGO1.ListIndex = -1
CODIGO2.ListIndex = -1
CODIGO3.ListIndex = -1
CODIGO4.ListIndex = -1
Set hprod = Worksheets("productos")
ufila = hprod.Cells(Rows.Count, 2).End(xlUp).Row
For i = 2 To ufila
If Cells(i, 2) = Me.NPARTEXISTENTE Then
CODIGO1.Value = Hoja7.Cells(i, 4)
CONSUMO1.Value = Hoja7.Cells(i, 5)
CODIGO2.Value = Hoja7.Cells(i, 6)
CONSUMO2.Value = Hoja7.Cells(i, 7)
CODIGO3.Value = Hoja7.Cells(i, 8)
CONSUMO3.Value = Hoja7.Cells(i, 9)
CODIGO4.Value = Hoja7.Cells(i, 10)
CONSUMO4.Value = Hoja7.Cells(i, 11)
PROD.Value = Hoja7.Cells(i, 3)
End If
Next i
End Sub
El problema que me genera el código es que no todos los productos llevan 4 componentes como se puede ver en la imagen 1. Cuando elijo un material que tiene 4 componentes solo aparecen los 2 primeros. Realice una prueba en poner un producto con 4 materiales en las primeras filas y el Código solo funciona con los primeros productos.
¿Alguien qué me pueda apoyar con este código?