Cómo utilizar EXCEL vba para implementar la función de consulta de puntuación
Respuesta: Como explicaste, escribí un programa y lo probé correctamente. Sub?ScoreQuery()
¿Dim?Orng?As?Range
Dim?ObjRng?As?Range
Dim?C?As?Range
¿Dim?FirstAddress?As?String
Dim?Cnt?As?Long
Establecer?Orng?=?Sheet("Sheet1").Range("A2" )
Orng.Offset(-1,?1).Resize(1,?2)? =?Array("Asignaturas", ?"" Calificaciones")
¿Con? Hojas("Hoja2")
Establecer?ObjRng?=? .Range("A1:A"? &? .Cells(Rows.Count,?1).End(xlUp).Row) p>
¿Fin?Con
¿Hacer?Hasta?IsEmpty(Orng)
Cnt?=?Application.CountIf(ObjRng,?Orng.Value)
Si Cnt?=?0 Entonces
Establecer?Orng?=?Orng.Offset(1,?0)
Si no
Establecer?C? =?ObjRng.Find(what:=Orng.Value,?LookIn:=xlValues,?lookat:=xlPart)
Primera dirección?=?C.Dirección
Si?Cnt? >?1?Entonces
Rango(Orng.Offset(1,?0),?Orng.Offset(Cnt?Entonces
Rango(Orng.Offset(1,?0) ,?Orng.Offset(Cnt?-?1,?0)).EntireRow.FillDown
End?If
Hacer
Orng.Offset(1 )?1)? =?C.Offset(0,?1)
Orng.Offset(0,?2)? >Set?Orng?=?Orng.Offset(1,?0)
Set?C?=?ObjRng.FindNext(C)
¿Bucle?If
Bucle
MsgBox?"Consulta completada!"
Fin
Suboperación
MsgBox "¡Consulta completada!" " ,?vbInformación,?