Macro para copiar

Hola expertos, necesito un código que me copie el valor de la celda del lado derecho de donde encontró un valor, es decir, encontró un valor que puse a buscar en la columna a pero necesito que copie es el valor de la columna b... Gracias

1 Respuesta

Respuesta
1
Tienes varias maneras de realizar lo que pides
Este código te busca en la hoja2 el valor que introduzcas en la celda A1 de la hoja1 y te trae el dato a su lado
Sub buscar()
Dim dato As Variant
Dim dato2 As Variant
dato = Range("A1").Value
If dato = "" Then
MsgBox "Dato no encontrado", vbOKOnly + vbInformation, "Búsqueda"
Exit Sub
End If
Sheets("hoja2").Select
Set dato2 = Range("A:A").Find(What:=dato, LookIn:=xlValues, _
LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If dato2 = dato Then
dato2.Offset(0, 1).Select
Selection.Copy
Sheets("hoja1").Select
Range("B1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("hoja2").Select
End If
If dato2 = dato Then
dato2.Offset(0, 2).Select
Selection.Copy
Sheets("hoja1").Select
Range("C1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End If
End Sub
Tenemos bastantes más opciones así mismo si lo que necesitas es pegar el dato en cualquier otro sitio o bien unos debajo del otro coméntamelo y lo modificamos
Ya me cuentas
Hola experto mira yo tengo la hoja1 y la hoja2, necesito buscar unos códigos de la hoja1, columna A, si lo encuentra en una celda de la hoja 2 me pase el dato que es el valor correspondiente a ese código que esta en la columna b de la hoja 1
codigo / valor
5 / 50000
7 / 20000
Necesito que si encontró el 5 pase el valor y si no lo encuentra ponga 0
Hola experto, este es el código que tengo medio funciona lo que pasa es que no me paso el valor de al lado sino que cada que lo ejecuto me paso todos los valores que contenga 1 o 2 y solo necesito que si encuentra el 1 me paso el valor de al lado
Sheets("Calculos").Select
If Columns("A:A").Find(What:=1, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate Then
Selection.Copy
Sheets("CURVA VENTAS").Select
Range("N37").Select
ActiveSheet.Paste
Else
Sheets("CURVA VENTAS").Select
Range("N37").Select = 0
End If
Sheets("Calculos").Select
If Columns("A:A").Find(What:=2, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate Then
Selection.Copy
Sheets("CURVA VENTAS").Select
Range("O37").Select
ActiveSheet.Paste
Else
Sheets("CURVA VENTAS").Select
Range("O37").Select = 0
End If
Lo cierto es que no acabo de entender lo que me dices si lo prefieres pásame tu archivo y dentro de el con comentarios me dices lo que necesitas
[email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas