Colección de citas famosas - Slogan de motivación - EXCEL encuentra que la columna A excluye la columna B y el resultado se muestra en la columna c. ¿Qué debo hacer?

EXCEL encuentra que la columna A excluye la columna B y el resultado se muestra en la columna c. ¿Qué debo hacer?

El filtrado se puede realizar utilizando la función BUSCARV+. También se puede implementar usando vba general.

Por ejemplo, ahora usa VBA para resolver el problema.

Idea básica: crear un diccionario B, almacenar los datos de la columna B en el diccionario B, recorrer la columna de datos A y, si la columna C no existe en el diccionario B, agregarla a la columna C. Al final del recorrido, los datos de la columna C son el resultado de A-B.

Los datos iniciales de la tabla se muestran en la figura:

Paso 1: cree una macro y codificarlo de la siguiente manera:

Subdatos excluir()

Mostrar my como cadena

Establecer I, J como números enteros

Atenuar b como Objeto

Mys="DataExclusion"

Establecer b = CreateObject("Script. Dictionary")

Hojas (Mi selección

I = 2

Hacer mientras celda(I,2)<>"""'Colocar la lista en el diccionario.

m_key = Celdas(I, 2)

M_ITEM = I - 1

Si b no existe (m_key), entonces

b. Agregue m_key, M_ITEM

Terminará si...

I = I + 1

Anillo

' j = 2'Registre el último número de fila de los datos escritos en la columna c.

I = 2

Do While Cell(I,1)<>"""Excluye los datos de la columna A de la columna B y guárdalos en la columna c.

m_key = celdas(I,1)

Si b no existe (m_key), entonces

celdas(J,3) = m_key

J = J + 1

Terminará si...

I = I + 1

Anillo

Conector final

Después de ejecutar esta macro, el resultado es el siguiente: