Experto, necesito una macro que me ayude a copiar la ultima columna (esta columna es variada, puede estar en cualquier lugar ejm A, B, C... Etc)de una hoja a otra, por favor necesito su ayuda Esperando una respuesta rapido medespido con atención!
Necesito saber si tienes valores en todas tus celdas o puede darse el caso que la columna que quieras copiar tenga celdas vacías, para saber cual es la columna última que necesitamos copiar tenemos que situarnos en una fila con datos para poder desplazarnos a la ultima celda y seleccionar la columna. Aclaramé esta cuestion. >Un saludo >Julio
Julio: Puede que esta ultima columna que quiero copiar tenga o no dato en la ultima celda, esta columna es producto de la suma devarias columnas quie tienen datos en celdas y otras son vacías, así que estacolumna tiene celdas vacías y tiene un rago de 40 filas. Esperando una una respuesta pronta. Gracias
Pues entonces como me sitúo en la ultima columna si desconocemos cual es y encima no tengo referencia de que la celda tenga datos... que quieres que comprobemos las 40 filas para saber cual es la ultima celda de cada fila con datos y esa es la que elegimos. Mira a ver si te sirve esto, pero como tengas celdas por medio vacías también tendremos que rompernos a cabeza para localizar alguna referencia: Sub Comprobar() Dim mi_celda As String Dim x As Long Dim celda As Long Dim celda1 As Long Dim mi_columna As Long Range("A1").Select mi_celda = ActiveCell.Address ActiveCell.End(xlToRight).Select celda = ActiveCell.Column Range(mi_celda).Offset(1, 0).Select mi_celda = ActiveCell.Address ActiveCell.End(xlToRight).Select celda1 = ActiveCell.Column If celda > celda1 Then mi_columna = celda Else mi_columna = celda1 End If For x = 1 To 40 Range(mi_celda).Offset(1, 0).Select mi_celda = ActiveCell.Address ActiveCell.End(xlToRight).Select celda = ActiveCell.Column If celda > mi_columna Then mi_columna = celda Else mi_columna = mi_columna End If Next x Cells(1, mi_columna).Select celdaINI = ActiveCell.Address ActiveCell.Offset(65535, 0).Select celdaFIN = ActiveCell.Address Range(celdaINI, celdaFIN).Select 'Ya tenemos seleccionada la ultima columna completa ahora pones tú el codigo de lo que quieres hacer con ella End Sub