“Conocimientos software>Hojas de cálculo

Cómo comparar columnas con VBA

2015/10/26
Visual Basic para Aplicaciones ( VBA ) es un lenguaje de programación diseñado para programas de Microsoft Office, como PowerPoint , Word y Excel. Te permite crear herramientas personalizadas , botones y menús que se pueden utilizar para personalizar sus aplicaciones de Office. Por ejemplo , no hay una herramienta en Excel que le permite comparar las columnas y resaltar las diferencias. Sin embargo , con algo de código VBA , puede crear una herramienta útil para ese fin . Cosas que necesitará
Excel 2007 o Excel 2010
Ver Más instrucciones
1

clic en la ficha " Developer " en Excel y haga clic en "Visual Basic ".
2

Haga clic en " Insertar ". Haga clic en " módulos" para abrir una nueva ventana del módulo
3

cortar y pegar el siguiente código en la ventana : .

Sub CompareColumns ( ) guía

Columna1 As Range

Columna2 As Range

' Preguntar al usuario durante el primer rango de la columna de comparar ...

' ---------- ------------------------------------------

Set Columna1 = Application.InputBox ( " Seleccionar Primera columna de comparación " , Type : = 8 ) Check

' que la gama se han proporcionado consta de sólo 1 columna ...

Si Column1.Columns . Recuento > 1 Entonces

hacer hasta Column1.Columns.Count = 1

MsgBox " sólo se puede seleccionar la columna 1 "

Set Columna1 = Application.InputBox ( " Seleccione Primera columna de comparación " , Type : = 8 )

Loop

End If

' Preguntar al usuario para el segundo rango de la columna de comparar ...
< p > ' ----------------------------------------------- -----

Establecer la columna 2 = Application.InputBox ( " Select Second columna de comparación " , Type : = 8 ) Check

' que la gama se han proporcionado consta de sólo 1 columna ...

Si Column2.Columns.Count > 1 Entonces

Do Until Column2.Columns.Count = 1

MsgBox " sólo se puede seleccionar la columna 1 "

Set columna 2 = Application.InputBox ( " Select Second columna de comparación " , Type : = 8 )

Loop

End If

' Check tanto la columna rangos son del mismo tamaño ...

' ----------------------------------- ----------

Si Column2.Rows.Count < > Column1.Rows.Count Entonces

¿ Hasta Column2.Rows.Count = Column1.Rows . Cuente

MsgBox " la segunda columna debe ser del mismo tamaño que la primera"

Set columna 2 = Application.InputBox ( " Select Second columna de comparación " , Type : = 8 )

Loop

End If

' Si las columnas enteras han sido seleccionadas (por ejemplo, $ AA) , limitar el tamaño de área de distribución a la Red

' UsedRange de la hoja activa. Esto detiene la rutina de control de la totalidad Column1.Rows.Count = 65536 Después

Set Columna1 = Range ( Column1.Cells ( 1 ) , Column1.Cells ( ActiveSheet.UsedRange.Rows.Count ))

Set columna 2 = Range ( Column2.Cells ( 1 ) , Column2.Cells ( ActiveSheet.UsedRange.Rows.Count ))

End If

'Realiza las células de comparación y establecer que son los mismos que
amarilla

' ---------------------------------------------- ------------------

intCell Dim As Long

Para intCell = 1 Para Column1.Rows.Count

Si Column1.Cells ( intCell ) = Column2.Cells ( intCell ) Entonces Column1.Cells

inicio ( intCell ) . Interior.Color = vbYellow

Column2.Cells ( intCell ) . Interior.Color = vbYellow

End If

Siguiente

End Sub
4

Press "F5 " para ejecutar la rutina y comparar las columnas.

Hojas de cálculo
Cómo agregar un borde a una celda
Cómo anclar las columnas en una hoja de cálculo
Cómo acceder y importar datos de hojas de trabajo
Cómo mostrar la media de los datos en una tabla dinámica de Excel
Cómo crear un gráfico de Bell en MegaStat
Cómo copiar una celda de una hoja a otra
¿Cómo hacer Trend Charts
Las desventajas de Minitab
Conocimientos Informáticos © http://www.ordenador.online