Quiero que mi macro busque celdas con algunos valores.

Tengo una hoja que tiene el la columna B diferentes letras lo que quiero es que la macro busqué las letras R y copié los datos de la celda del costado (de la columna A) y los pegue en otra hoja.

1

1 Respuesta

190.510 pts. Los hombres aprenden mientras enseñan.

[Hola 

Como tienes tus datos en la columna B, una letra o son varias letras por celda

Es una letra por celda, digamos por ejemplo celda B1= R

B2= E 

Así sucesivamente, quiero que busque primero las que tengan la letra R luego que copié la información de la celda del costado y lo pegue en otra hoja.

[Hola 

Te paso la macro


Valora la respuesta para finalizar

Sub busc_copiar()
'Adrie Ortiz
    Set h1 = Sheets("Hoja1")    'hoja origen
    Set h2 = Sheets("Hoja2")    'hoja destino
    '
    Application.ScreenUpdating = False
    '
    For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row
        If h1.Cells(i, "A") = "R" Then
            h1.Cells(i, "B").Copy
            u = h2.Range("A" & Rows.Count).End(xlUp).Row + 1
            h2.Range("A" & u).PasteSpecial xlValues
        End If
    Next i
     Application.CutCopyMode = False
     Application.ScreenUpdating = False
     MsgBox "Fin"
End Sub

Woooo que bien, ahhh me preguntó si me podrías explicar que indicaciones le das con h1 y H2 por favor quiero saber y aprender para poder usarlo en algunas otras cosas. 

Gracias me ha servido mucho.

    Set h1 = Sheets("Hoja1")    'hoja origen
    Set h2 = Sheets("Hoja2")    'hoja destino

La h1 y h2 son variables para asignar la hojas que voy a usar en toda la programación.

Por ejemplo en esta línea ves h1 y hace referencia a la hoja1 como observas al principio y es as cómodo así.

H1.Cells(i, "B"). Copy

y me ahorra el tiempo de estar escribiendo Sheets("Hoja1") en toda la programación pudiendo usar una variable que me facilita el trabajo.

Hoja.Cells(i, "B"). Copy

las variables puede ser como tu deseas

Por ejemplo

set hoja = sheets("Hoja1")

Hoja.Cells(i, "B"). Copy



Valorar la respuesta como excelente que está en la parte inferior de la respuesta saludos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas