Informacion de una celda a parte de una columna

Hola quisiera saber si se puede que:
si tengo en una hoja de exel esta informacion
      A                   B            C          D
1                          
2                                         
3                                                   WB40.5035.01
4                                
5                     
6                        
7                                                   WB50.1000.01
que la informacion de la columna "D" se imprima en la columna "A" pero solo asta donde se encuentrela fila que contienen la informacion, para que quede parecido a esto:
         A                             B            C          D
1       WB40.5035.01                     
2       WB40.5035.01                                 
3       WB40.5035.01                                 WB40.5035.01
4        WB50.1000.01                         
5        WB50.1000.01                 
6        WB50.1000.01                  
7        WB50.1000.01                                WB50.1000.01
gracias por su tiempo espero me puedan ayudar

1 respuesta

Respuesta
1
Quieres decir, que busque la primera celda vacía, en D, ¿y de ahí en adelante hasta la que no está vacía y que rellene hacia arriba?...
-
Tendrá que ser con una Macro. ¿Te parece?
-
si es eso lo que nececito y una macro si me serviria mucho gracias
?Sub RellenarHaciaArriba()
Dim CELDA As Range
Dim INICIO As Integer
Dim FIN As Integer
Dim RANGO As String
For Each CELDA In Range("D:D")
If INICIO = 0 Then
If CELDA.Value = "" Then INICIO = CELDA.Row
Else
If CELDA.Value = "FIN" Then Exit For
If Not CELDA.Value = "" Then
FIN = CELDA.Row
CELDA.Copy
RANGO = "D" & INICIO & ":" & "D" & FIN
Range(RANGO).Select
ActiveSheet.Paste
INICIO = 0
End If
End If
Next CELDA
Range("A1").Activate
Application.CutCopyMode = False
End Sub
Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Este es el código, como debe ser.
-
Sub RellenarHaciaArriba()
Dim CELDA As Range
Dim INICIO As Integer
Dim FIN As Integer
Dim RANGO As String
For Each CELDA In Range("D:D")
   If INICIO = 0 Then
      If CELDA.Value = "" Then INICIO = CELDA.Row
   Else
      If CELDA.Value = "FIN" Then Exit For
      If Not CELDA.Value = "" Then
         FIN = CELDA.Row
         CELDA.Copy
         RANGO = "D" & INICIO & ":" & "D" & FIN
         Range(RANGO).Select
         ActiveSheet.Paste
         INICIO = 0
      End If
   End If
Next CELDA
Range("A1").Activate
Application.CutCopyMode = False
End Sub
-
Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 110px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;"></div>
MUCHAS GRACIAS ME SIRVIO MUCHO
ADEMAS MODIFIQUE UN POCO TU MACRO Y ME SIRVIO PARA MAS APLICACIONES BUSCANDO EN RANGOS NO TENIA MUY CLARO LO DE LOS RANGOS PERO AHORA YA ENTENDI DE VERDAD MUCHAS GRACIAS UNA SOLUCION DE GRAN UTILIDAD ¡EXELENTE!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas