............ Foro Excel
Si no lo has hecho aún: REGISTRATE!!!

MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Ir abajo

MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por ESHM13 el Jue Ene 11, 2018 3:14 pm

buenas tardes


pido su apoyo para una formula =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"") la cual quisiera convertirla en una macro la cual se ejecute cada vez que ingrese datos un cada celda de la columna K esto se refleje en la columna J

ESHM13

Masculino Cantidad de envíos : 7
Edad : 39
Ciudad - Pais : CDMX
Version de Excel : 2010
Fecha de inscripción : 08/06/2017

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por gfellay el Mar Ene 16, 2018 9:49 am

En la hoja en cuestión, pon el siguiente código
Código:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 11 Then 'columna J
      Target.Offset(0, -1).FormulaR1C1 = "=IFERROR(VLOOKUP(RC[1],R8C32:R200C33,2,1),"""")"
End If
End Sub
Saludos
avatar
gfellay

Masculino Cantidad de envíos : 31
Edad : 48
Ciudad - Pais : Bs. As. - Argentina
Version de Excel : 2010
Fecha de inscripción : 12/09/2008

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por ESHM13 el Jue Ene 18, 2018 3:15 pm

Hola gfellay
la agrague a mi archivo y si funciona si yo vuelvo a escribir la palabra en la celda de referencia que es en cualquier celda de la columna k solo que como comente el archivo tiene mas macros que hacen referencia a otras cosas y bueno en la celda de la columna k no escribo la palabra ya me aparece por que tengo ahí otra macro y si solo aparece la palabra la macro que me pusiste no la reconoce tengo que volver a escribir la palabra para que funcione, pregunta como podría hacerle para que la macro que me enviaste funcione al momento de que en cualquier celda de la columna k aparezca una palabra y no la tenga que volver a escribir?, y disculpa mi inexperiencia en este tema

ESHM13

Masculino Cantidad de envíos : 7
Edad : 39
Ciudad - Pais : CDMX
Version de Excel : 2010
Fecha de inscripción : 08/06/2017

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por ESHM13 el Jue Ene 18, 2018 3:16 pm

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column = 11 Then 'columna J
Target.Offset(0, -1).FormulaR1C1 = "=IFERROR(VLOOKUP(RC[1],R8C32:R200C33,2,1),"""")"
End If

Dim Palabras As Variant
Palabras = Array("ALACIADORA", "AMOLADORA", "AMPLIFICADOR PARA GUITARRA ELECTRICA", "AMPLIFICADOR", "ASPIRADORA", "AUDIFONO", "AUTOESTEREO", "BAFLE", "BAJO ELECTRICO", "BASCULA", "BATIDORA", "BICICLETA", "BLURAY", "BOCINA", "CAFETERA", "CALEFACTOR", "CAMARA", "CAMARA PROFESIONAL Y SEMIPROFESIONAL", "CELULAR", "CIZALLA", "COMPUTADORA DE ESCRITORIO", "CONSOLA DE VIDEOJUEGO", "CONSOLA PORTATIL", "DESBROZADORA", "DISCO DE VIDEO JUEGO", "DISCO DURO", "DVD", "ESMERILADORA", "ESMERILADORA ANGULAR", "ESTUFA", "EXTRACTORE DE JUGO", "FREIDORA", "GARLOPA", "GENERADOR", "GUITARRA ACUSTICA", "GUITARRA ELECTRICA", "GUITARRA ELECTROACUSTICA", "HIDROLAVADORA", "HORNO DE MICROONDAS", "HORNO ELECTRICO", "IPOD", "JUEGO DE CUBIERTOS", "JUEGO DE DADOS", "JUEGO DE DESARMADORES", "JUEGO DE HERRAMIENTAS", "JUEGO DE PINZAS", "LAPTOP", "LICUADORA", "LLAVE DE CRUZ", "MAQUINA DE COSER", "MARRO", "MARTILLO", "MINICOMPONENTE", "MOTOSIERRA", "MULTIFUNCIONAL", "NINTENDO", "PANTALLA", "PARRILLA ELECTRICA", _
"PISTOLA DE CALOR", "PLANCHA", "LLAVE DE CRUZ", "RAUTER", "MULTIMETRO", "NEVERA", "REBANADORA", "SOLDADORA", "PLANTA DE SOLDAR", "PROCESADOR DE ALIMENTOS", "PROYECTOR", "PULIDORA", "CONGELADOR", "REFRIGERADOR", "REPRODUCTOR MP3", "ROTOMARTILLO", "SECADORA DE CABELLO", "SIERRA", "SIERRA CIRCULAR", "TABLET", "TALADRO", "TEATRO EN CASA", "TECLADO", "TORNILLO DE BANCO", "TOSTADOR DE PAN", "TRICICLO DE CARGA", "VENTILADOR", "VIDEOCAMARA", "XBOX 360", "XBOX ONE")
If Target.Rows.Count = 1 And _
Target.Columns.Count = 1 And _
Target.Column = 14 And Target.Row > 1 Then
Application.EnableEvents = False
Target.Offset(0, -3) = ""
For p = 0 To UBound(Palabras)
If InStr(UCase(Target), Palabras(p)) > 0 Then
Target.Offset(0, -3) = Palabras(p)
End If
Next
Application.EnableEvents = True

End If


Palabras = Array("ABARTH", "ACER", "ACTECK", "ACURA", "ADIR", "ACROS", "ALCATEL", "ALFA ROMEO", "ALIENWARE", "ALPINA", "ALPINE", "ANDIS", "ANOVA", "AOC", "APOLLO TOOLS", "APPLE", "APRILIA", "AR BLUE CLEAN", "ARCTIC CAT", "ASFALTADORA", "ASTON MARTIN", "ASUS", "ATVIO", "AUDI", "AVANTCO", "AYERBE", "BABYLISS", "BAJAJ", "BEATS", "BEHRINGER", "BENQ", "BENOTTO", "BENTLEY", "BIMEX", "BIMOTA", "BIONAIRE", "BLACK & DECKER", "BLACKBERRY", "BMW", "BOSCH", "BOSE", "PIONNER", "BOSH", "BOSS", "BRITMAN", "BROTHER", "BRP CAN - AM", "BUELL", "BUICK", "CADILLAC", "CANON", "CARABELA", "CARTIER", "CASIO", "CERIOTTI", "CHANG'AN", "CHEVROLET", "CHRYSLER", "CLARION", "COMPAQ", "CONAIR", "CORT", "CRAFTSMAN", "CROW BACCARA", "DAEWOO", "DELL", "DELONGHI", "DEWALT", "DFSK", "DINAMO", "DODGE", "DUCATI", "ECHO", "EFCO", "ELECTROLUX", "EPIPHONE", "EPSON", "EUREKA", "EUROLINE", "EVERHEAT", "FENDER", "FERRARI", "FIAT", "FULAA", "GA.MA ITALY", "GAMMA", "GARLAND", "GATEWAY", "GENERAL ELECTRIC", "GIBSON", _
"GMC", "GONI", "GOPRO", "HAMILTON", "HAMILTON BEACH", "HARLEY DAVIDSON", "HARMAN KARDON", "HATSA", "HAUS", "HERSTYLER", "HISENSE", "HITACHI", "HONDA", "HOOVER", "HP", "HTC", "HUAWEI", "HUSQVARNA", "HYUNDAI", "IBAÑEZ", "INFINITI", "ISLO", "ITALIKA", "IZUMA", "JAGUAR", "JANOME", "JASMINE", "JBL", "JEEP", "JENSEN", "JONSERED", "JUKI", "JVC", "KAISER", "KARCHER", "KAWASAKI", "KAWASHIMA", "KENWOOD", "KIA", "KICTCHEND AID", "KINGSTONE", "KITCHEN AID", "KLIPSCH", "KOBLENZ", "KRUPS", "KTM", "KURPS", "LAKEWOOD", "LAMBORGHINI", "LAMEX", "LAND ROVER", "LANEY", "LANIX", "LASKO", "LENOVO", "LG", "LIJIA", "LINCOLN", "LINE 6", "LOTUS", "MABE", "MAKITA", "MAN", "MANHATTAN", "MARSHALL", "MASERATI", "MASTER CRAFT", "MASTRETTA DESIGN", "MAZDA", "MCLAREN AUTOMOTIVE", "MERCEDES-BENZ", "MERCURIO", "MICHELIN", "MICROSOFT", "MIKELS", "MILWAUKEE", "MINI BULLET", "MITSUBISHI", "MITZU", "MONTBLANC", "MOTOROLA", "MOULINEX", "MYTEK", "NEC", "NIKON", "NINTENDO", "NISSAN", "NOKIA", "NUTRIBULLET", "NYX", _
"OLEO-MAC", "ONEIDA", "ONKYO", "OREGON", "OSTER", "PANASONIC", "PARKER", "PEAVEY", "PEUGEOT", "PHILIPS", "PIAGGIO", "PIONNER", "POLARIS", "POLAROID", "PORSCHE", "POULAN", "PRETUL", "RCA", "REMINGTON", "RENAULT", "REVLON", "ROLAND", "ROTTER", "ROYAL COOK", "ROYAL PRESTIGE", "RYOBI", "SAMSUNG", "SANYO", "SCHONES BAUEN", "SEAT", "SEPHORA", "SHARP", "SHEAFFER", "SHINDAIWA", "SINGER", "SKIL", "SKULLCANDY", "SONY", "SOUNDSTREAM", "SPELER", "SRT", "STANLEY", "STEREN", "STIHL", "SUBARU", "SUNBEAM", "SURTEK", "SUZUKI", "TAKAMINE", "TAURUS", "T-FAL", "TIMCO", "TOOLKRAFT", "TOSHIBA", "TOYAMA", "TOYOTA", "TRAMONTINA", "TREJO", "TRIUMPH", "TRUPER", "TURBO", "TURMIX", "TORREY", "URREA", "VENTO", "VESPA", "VICTORY", "VIDAL SASSOON", "VIEWSONIC", "VIZIO", "VOLKSWAGEN", "VOLVO", "VÜHL", "WEST BEND", "WESTWARD", "WHIRLPOOL", "WILTON", "YAMAHA", "ZOMAX")
If Target.Rows.Count = 1 And _
Target.Columns.Count = 1 And _
Target.Column = 14 And Target.Row > 1 Then
Application.EnableEvents = False
Target.Offset(0, -2) = ""
For p = 0 To UBound(Palabras)
If InStr(UCase(Target), Palabras(p)) > 0 Then
Target.Offset(0, -2) = Palabras(p)
End If
Next
Application.EnableEvents = True

End If

tiempo = Date
Set isect = Application.Intersect(Target, Range("H2:H900"))
If Not isect Is Nothing Then
If isect.value <> "" Then
isect.Offset(0, -5).value = tiempo
End If

Set isect = Application.Intersect(Target, Range("H2:H900"))
If Not isect Is Nothing Then
If isect.value = "" Then
isect.Offset(0, -5).value = ""
End If
End If
End If

Hora = Now
Set isect = Application.Intersect(Target, Range("H2:H900"))
If Not isect Is Nothing Then
If isect.value <> "" Then
isect.Offset(0, -4).value = Format(Hora, "hh:mm")
End If

Set isect = Application.Intersect(Target, Range("H2:H900"))
If Not isect Is Nothing Then
If isect.value = "" Then
isect.Offset(0, -4).value = ""
End If
End If
End If

On Error GoTo Err
If Target.Column = 11 Then
Range("J" & Target.Row) = WorksheetFunction.VLookup(Cells(Target.Row, Target.Column), Range("AF8:AG600"), 2, 0)
End If

Exit Sub
Err:
If Err.Number = 1004 Then
End If


Dim Rng As Range, Res
If Intersect(Columns("h"), Target) Is Nothing Then Exit Sub
Set Rng = Range("U8:V600")

Application.EnableEvents = False
For Each C In Target
Res = Application.VLookup(C, Rng, 2, False)
C.Offset(, 1) = IIf(IsError(Res), Empty, Res)
Next

Application.EnableEvents = True



End Sub

ESHM13

Masculino Cantidad de envíos : 7
Edad : 39
Ciudad - Pais : CDMX
Version de Excel : 2010
Fecha de inscripción : 08/06/2017

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por ESHM13 el Jue Ene 18, 2018 3:18 pm

ese es el código que tengo en la hoja no pude subir el archivo pero por eso envio el código tu código lo puse al principio y lo he movido de lugar y aun asi cuando aparece la palabra en la columna k no aparece nada en la celda de la columna J como se podría hacer para que cuando aparezca la palabra sin necesidad de que yo la escriba aparezca lo referenciado en la celda de la columna j

ESHM13

Masculino Cantidad de envíos : 7
Edad : 39
Ciudad - Pais : CDMX
Version de Excel : 2010
Fecha de inscripción : 08/06/2017

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por ESHM13 el Jue Ene 18, 2018 3:20 pm

este código esta de mas
On Error GoTo Err
If Target.Column = 11 Then
Range("J" & Target.Row) = WorksheetFunction.VLookup(Cells(Target.Row, Target.Column), Range("AF8:AG600"), 2, 0)
End If

Exit Sub
Err:
If Err.Number = 1004 Then

ESHM13

Masculino Cantidad de envíos : 7
Edad : 39
Ciudad - Pais : CDMX
Version de Excel : 2010
Fecha de inscripción : 08/06/2017

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por gfellay el Vie Ene 19, 2018 2:49 pm

El código que te pasé yo deberías ponerlo en la macro que actualiza la columna K, pero al final (una vez que estas seguros que se actualizó la información...)
avatar
gfellay

Masculino Cantidad de envíos : 31
Edad : 48
Ciudad - Pais : Bs. As. - Argentina
Version de Excel : 2010
Fecha de inscripción : 12/09/2008

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por ESHM13 el Mar Ene 23, 2018 4:06 pm

Hola gfellay te agradezco mucho si la coloque en donde me dijiste pero ya se actualizo la información y sigo llenando mi tabla y al aparecer la palabra no la reconoce en la otra celda solo la reconoce cuando yo la escribo.

ESHM13

Masculino Cantidad de envíos : 7
Edad : 39
Ciudad - Pais : CDMX
Version de Excel : 2010
Fecha de inscripción : 08/06/2017

Volver arriba Ir abajo

Re: MACRO PARA =SI.ERROR(BUSCARV(K8,$AF$8:$AG$200,2,1),"")

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.