Selecciona un nombre de la lista desplegable, encuentra todos los nombres coincidentes en la columna E, luego coloca todos los números correspondientes de la columna H en otra lista desplegable.
He estado buscando durante casi 2 días para encontrar una respuesta a esto y me está volviendo loco. Soy muy nuevo en VBA, así que no tengo ningún código para compartir, solo he estado probando cosas que encuentro en otros sitios y en YouTube. He estado trabajando en una hoja de registro de inicio de sesión de técnicos y estos son los pasos que necesito realizar:
- Selecciona tu nombre del combobox “Técnico de Metrología” en la hoja de “Iniciar sesión de Técnico de Metrología”
- VBA busca a través de la columna H en la hoja de “rastreador de metrología” para encontrar todos los nombres coincidentes
- Los números de lote de la columna E en la hoja de “rastreador de metrología” se colocan en el combobox “Número de Lote” si el valor en la columna M en la hoja de “rastreador de metrología” es igual a “Pend.”
He intentado esto Create Dependent Combo Boxes on a Userform – Excel VBA y no funcionó, solo devolvió todos los valores de la columna que necesito y todos los otros artículos y videos eran prácticamente lo mismo.
Una cosa que debo mencionar es que la mayoría de los valores en el rastreador de metrología se hacen referencia desde otro archivo, por lo que los números de lote son iguales a un valor de celda en otro archivo.
Edit:
He intentado esto aunque sabía que no iba a funcionar
Private Sub cboTech_change()
Select Case cboTech.Value
Case Is = "employee 1"
cboLotNum.RowSource = "LotNumber"
Case Is = "employee 2"
cboLotNum.RowSource = "LotNumber"
Case Is = "employee 3"
cboLotNum.RowSource = "LotNumber"
End Select
End Sub
y también intenté esto, pero seguía obteniendo un “error de tiempo de ejecución ‘424’ se requiere un objeto”
Sub FndLot()
Dim idx As Long
Dim lngRow As Long
idx = TechBox.ListIndex
If idx <> -1 Then
lngRow = TechBox.ListIndex
Worksheets("Metrology Tracker").Range("E" & lngRow).Value = LotNum.Value
End If
End Sub
davy.ai
Parece que estás intentando crear un formulario de usuario en Excel VBA que permita a los técnicos iniciar sesión y seleccionar números de lote. Aquí tienes algunas sugerencias sobre cómo lograr la funcionalidad deseada:
En el código VBA del cuadro combinado, puedes utilizar la propiedad “ListFillRange” para rellenar el cuadro combinado con los nombres de tus técnicos. Por ejemplo:
Este código asume que los números de lote que deseas llenar en el segundo cuadro combinado están en la columna E de la hoja “rastreador de metrología”, y que el estado está en la columna M (por ejemplo, “Pend.”). Crea una cadena con todos los números de lote coincidentes separados por punto y coma, y luego divide esa cadena en una matriz que se utiliza para llenar el segundo cuadro combinado.
Espero que estas sugerencias te ayuden a comenzar en la dirección correcta. ¡No dudes en pedir ayuda si te quedas atascado nuevamente!