Se buscará información de una base de datos buscando el código del alumno y se obtendrá la línea que corresponda al código para lo cual se copiará en otra hoja la base y se eliminarán filas hasta dejar solo la que contiene los datos necesarios.
Sintaxis
Application.ScreenUpdating = False
Sheets("Data").Select
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Notas").Select
Range("A5").Select
ActiveSheet.Paste
codigo = Cells(2, 2)
ult = Cells(Rows.Count, 1).End(xlUp).Row
For i = ult To 5 Step -1
If Cells(i, 1) <> codigo Then
Rows(i).Delete
End If
Next
Cells.Select
Cells.EntireColumn.AutoFit
Imagenes
Base de datos
(Para mayor visualización de la imagen, hacer click en la misma)
Nota por código
(Para mayor visualización de la imagen, hacer click en la misma)
Adjunto ejemplo de Notas
Elaborado por: Tiffani Zambrano
17/02/2013 a las 10:43 pm
Excelente aporte, le ha aplicado para manejar los datos de mis alumnos y me ha funcionado muy bien.
23/11/2014 a las 1:56 am
Por qué la función: ult = Cells(Rows.Count, 1).End(xlUp).Row no se realiza contando de arriba hacia abajo?
23/11/2014 a las 11:24 pm
Excelente pregunta Piero
El problema de hacerlo de arriba hacia abajo es que si existen celdas vacías en la columna empleada, entonces no te entregará la última fila sino que se basará en el espacio en blanco encontrado.
Si estas seguro que no hay espacios en blanco, entonces se puede usar con tranquilidad de arriba hacia abajo también.
Saludos
06/07/2016 a las 6:11 pm
Buenas tardes Fernando, veo tu ejemplo y me parece fantastico, tengo un archivo con varias plantillas y una base de datos externa, no se como adicionar registros a la base de datos ya sea al principio o a la ultima fila donde tengo datos