Ho la jesus silva, bienvenido a TodoExpertos!
En el futuro puedes poner aquí todo tu código, presiona el icono Insertar código fuente:
Y en el panel que se abre puedes pegar tu código:
Ejemplo de cómo queda el código:
Sub Searching_Multiple_Query()
Dim wsCode As Worksheet, wsDest As Worksheet
Dim dic As Object
Dim a As Variant
Dim i As Long
Dim c As Range
Set dic = CreateObject("Scripting.Dictionary")
Set wsCode = Sheets("Sheet1") 'wsAvailabilityCodes sheet
Set wsDest = Sheets("Sheet2") 'destination sheet
a = wsCode.Range("A5:R" & wsCode.Range("B" & Rows.Count).End(3).Row).Value
For i = 1 To UBound(a, 1)
If a(i, 16) = "User" And a(i, 17) = "Office" And a(i, 18) = "G2" Then
'Add to the dictionary only those that meet the conditions
dic(a(i, 2)) = a(i, 1) & "|" & a(i, 9) & "|" & a(i, 11)
End If
Next
For Each c In wsDest.Range("Y3", wsDest.Range("Y" & Rows.Count).End(3))
If dic.exists(c.Value) Then
wsDest.Range("AA" & c.Row).Value = Split(dic(c.Value), "|")(2)
wsDest.Range("AC" & c.Row).Value = Split(dic(c.Value), "|")(1)
wsDest.Range("AZ" & c.Row).Value = Split(dic(c.Value), "|")(0)
End If
Next
End Sub
Te invito a SUSCRIBIRTE a mi canal de youtube para saber más sobre Excel y Macros:
Excel fuera!