UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

1 Traer datos de otra hoja el 24/10/13, 10:01 am

neskat


Hola comunidad:

    Les cuento, tengo dos archivos en excel , uno llamado sueldos y otro llamado traernuevos.xlsm, el archivo sueldos tiene un boton que llama a una macro llamada traernuevos() que esta en el archivo traernuevos.xlsm, la macro busca columnas entre dos palabras y las pega en una columna seleccionada de sueldos, el problema es que esta linea Columns("INI:FIN").Select , no me selecciona las dos columnas , sino que me toma la columna INI y la FIN y las pega.

Les adjunto codigo completo por si me pueden ayudar


Sub traernuevos()
nombre = Range("A1").Value
Windows(nombre).Activate
Sheets("Hoja1").Select
Dim R, INI, E, FIN As Long
Set V = Cells.Find("aaa")
If Not V Is Nothing Then
      R = V.Row
      INI = V.Column  
Else
       MsgBox "Texto aaa No encontrado": Exit Sub
End If
Set W = Cells.Find("bbb")
If Not W Is Nothing Then
      E = W.Row
      FIN = W.Column 
Else
       MsgBox "Texto bbb No encontrado": Exit Sub
End If
INI = INI + 1
FIN = FIN - 1
Columns("INI:FIN").Select
Selection.Copy
Windows("sueldos.xlsx").Activate
Selection.Insert Shift:=xlToRight
Range("L8").Select
End Sub

2 Re: Traer datos de otra hoja el 24/10/13, 02:26 pm

tyno


Hola neskat.
Prueba el código de esta manera: Saludos

Sub traernuevos()
nombre = Range("A1").Value
Windows(nombre).Activate
Sheets("Hoja1").Select
Dim R, E As Long

Set V = Cells.Find("aaa")
If Not V Is Nothing Then
      R = V.Row
      INI = V.Column
Else
       MsgBox "Texto aaa No encontrado": Exit Sub
End If
Set W = Cells.Find("bbb")
If Not W Is Nothing Then
      E = W.Row
      FIN = W.Column
Else
       MsgBox "Texto bbb No encontrado": Exit Sub
End If

ref_abc1 = Cells(1, INI).Address
ref_abc2 = Cells(1, FIN).Address

For a = 1 To Len(ref_abc1)
y = Mid(ref_abc1, a, 1)
If Not IsNumeric(y) And y <> "$" Then ref_ini = ref_ini & y
Next a

For a = 1 To Len(ref_abc2)
z = Mid(ref_abc2, a, 1)
If Not IsNumeric(z) And z <> "$" Then ref_fin = ref_fin & z
Next a

INI = ref_ini
FIN = ref_fin
Range(INI & 1 & ":" & FIN & 1).EntireColumn.Select
Selection.Copy
Windows("sueldos.xlsx").Activate
Selection.Insert Shift:=xlToRight
Range("L8").Select
End Sub

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

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