¿Cómo mezclar una LISTA despegable y la función BUSCARV? ¿Macros? ¿Código? Que necesito

Hola hola

Tengo una lista de productos en una hoja excel.. Llamada "VER PRODUCTOS" este se basa en 3 columnas A B y C.

A código

B productos y

C precios

Actualmente en otra hoja llamada "NOTA"

Anoto el código del producto y automático me sale el producto que necesito..

Mi duda es no se si de esa lista que tengo de productos quisiera saber si con solo darle clic al producto desde la hoja "VER PRODUCTOS" este me lo lleve a una celda especifica a la hoja"NOTA" solo con darle clic en vez de anotar el código.

gracias..

3 Respuestas

Respuesta
1

Adjunta la planilla a mega. Mg y pon el link de la misma así puedo ayudarte a armar la formula. (Por lo que veo es sencillo lo que quieres hacer).

Respuesta
1

Si ya, en hoja Notas, al agregar un código te aparecen automáticamente los otros 2 campos seguramente es porque tenés fórmulas.

Entonces, si vas a utilizar una macro para ir colocando los códigos, podrías aprovechar y llevar los 3 campos y te evitas las fórmulas.

Probá esta versión. Como no indicas cual es la celda de hoja NOTA donde debe enviar el código, asumo que será en la celda seleccionada... este detalle luego lo ajustamos.

Lo que hace la macro además, es pasar a la fila sgte en hoja NOTA, permitiéndote ir seleccionando varios productos sin moverte de la hoja VER P.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'x Elsamatilde
'controla que se esté seleccionando celda en col A
If Not Intersect(Target, Columns("A")) Is Nothing Then
'controla que se haya seleccionado 1 sola celda
    If Target.Count = 1 Then
        Application.ScreenUpdating = False
        Sheets("NOTA").Select
        'ya estará la celda destino seleccionada
        ActiveCell.Value = Cells(Target.Row, "A")
        'opcional: mover los otros campos también
        ActiveCell.Offset(0, 1) = Cells(Target.Row, "B")
        ActiveCell.Offset(0, 2) = Cells(Target.Row, "C")
        'pasar a la fila sgte para seguir agregando productos a hoja NOTA
        ActiveCell.Offset(1, 0).Select
        'vuelvo a la hoja VER PRODUCTO
        Sheets("VER PRODUCTOS").Select
     End If
End If
End Sub

Veo que algunas hojas están protegidas... atención con este detalle al momento de enviar datos a la hoja. 

Sdos

Elsa

Respuesta
1

Pon la siguiente macro en los eventos de la hoja "VER PRODUCTOS"

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Columns("A")) Is Nothing Then
        If Target.Count = 1 Then
            Sheets("NOTA").Range("A4") = Cells(Target.Row, "A")
        End If
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(VER PRODUCTOS)
  4. Del lado derecho copia la macro

Saludos. Dante Amor

Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas