Referenciar columnas

Hola mushashos: ¿Saben?.. Tengo una duda. Resulta que tengo 2 planillas con muchas columnas, (unas 160) las 2 son iguales en encabezados y lo que varían son los datos. Ahora quiero generar un informe que me muestre según algún parámetro que ingresa el usuario una misma columna de las 2 planillas, una al lado de la otra. (Por ejemplo la columna a de la hoja1 y la columna a de la hoja2)
Mi idea inicial era poner las 2 planillas en 1 sola hoja y que me ocultara o mostrara lo que necesitase en el momento, pero son demasiadas columnas.
Bien, pensé en barrer los encabezados de las columnas y cuando dé con la columna indicada que me la copie y la pegue en la tercera hoja (hoja3). El problema aparece cuando ubico la columna en cuestión y la quiero referenciar:
Rescato a columna así:
columa = activecell.column
Pero esto me devuelve un número y no puedo seleccionarla así:
ActiveSheet. Column(columna & ":" & columna).Activate
Pues me da un error. ¿Cómo hacerlo?... ¿Debo acaso hacer una tabla que le diga a que número se le asiga la columna?
a=1
b=2
c=3.... Hasta el 160??
¿O existe algún comando que me devuelva la letra de la columna?... ¿Se puede referenciar la columna a partir del número de columna?.. ¿Si fueses así... Cual es ese "mágico" comando?
desde ya... Muchas gracias...
eso sería por ahora...
fernando

1 Respuesta

Respuesta
1
La instrucción que te está faltando es:
Selection.EntireColumn.Select
O sea que en la celda donde está, seleccionará la columna completa. No hace falta pasarle el valor a la variable columna, salvo que la necesites para otra cosa.
Espero tus comentarios o la finalización de la consulta. Si necesitas ayuda para algo más podes volver a consultarme.
Saludos
Elsa
PD) En mi página Web encontrarás esta y otras instrucciones básicas. Te invito a visitarla.
Hola ElsaMatilde: Gracias por tu solución, pero laverdad es que buscando, ya había dado con esa solución precisamente.
El problema es que efectivamente necesito saber la letra de la columna para otra cosa. ¿Existe algún comando que lo haga? ¿O hay que hacer una tabla? (Ahora lo hice así... pero espero que se pueda hacer de una forma más fácil)
desde ya... gracias.
Fernando
Para obtener la letra de la col la instrucción que utilizo es ésta:
Dim col As String
col = Mid(ActiveCell.Address, 2, 1)
Range("C2").Value = col ?optativo
Address devuelve la dirección de la celda activa en formato $A$2 por ejemplo, entonces con la función Mid obtengo el carácter a partir de la posición 1.
Lo coloqué en la celda C2 pero vos sabrás que hacer con la variable col.
Espero sea lo que necesites. En ese caso agradeceré no olvides finalizar la consulta.
Hasta pronto
Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas