Definición de un rango de celdas DINÁMICO.
Mediante el código que insertaré al final hago que al recibir el foco un control, básicamente, se ejecute una macro que se trae a él el valor que se encuentra en determinado rango de determinada hoja -la hoja de índice (7) del libro.
El problema que quisiera resolver en el aplicativo es que el rango sobre el que operara la VLookup no sea algo estático -en el código está definido como B2:F3- sino DINÁMICO, y ello a partir de la celda B2, supongo que la solución pasa por la propiedad "CurrentRegion", pero no doy con la sintaxis correcta -en el código que inserto incluyo, comentados, dos intentos en la línea que apunto-.
Este es el código que empleo:
Private Sub Nombre_Usuario_Enter() Dim Rango As Range Dim NombreUsuario As String On Error GoTo ControlErrores Set Rango = Sheets(7).Range("B2:F3") '''Set Rango = Sheets(7).Range("B2").CurrentRegion.Select '''Set Rango = Sheets(7).Range("B2").CurrentRegion NombreUsuario = Application.WorksheetFunction.VLookup(Me.USUARIO.Value, Rango, 2, 0) Me.Nombre_Usuario.Value = NombreUsuario Exit Sub ControlErrores: Me.Nombre_Usuario = "USUARIO NO REGISTRADO." End Sub
1 Respuesta
Respuesta de Dante Amor
1