Excel - Crear base de datos

   
Vista:

Crear base de datos

Publicado por Nacho (1 intervención) el 10/10/2009 13:37:55
Hola amigos, estoy intentando introducir datos en Hoja1 de forma vertical y que con la ejecución de la macro abajo señalada, me pase cada registro a la hoja2 de forma horizontal con objeto de crear una base de datos. El problema lo tengo en "Range("a5").Select " ya que esta línea dle código debería posicionarse en la primera línea en blanco y no soy capaz.

Gracias por vuestra ayuda

Sub Macro1()
"
" Macro1 Macro
" Macro grabada el 09/10/2009
"
" Acceso directo: CTRL+q
"
Range("B1:B3").Select
Selection.Copy
Sheets("Hoja2").Select
Range("a5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Range("A6").Select
Sheets("Hoja1").Select
Range("B1:B3").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("B1").Select
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Crear base de datos

Publicado por jcs (494 intervenciones) el 13/10/2009 10:04:33
Muy buenas,

Lo que tienes que hacer es identificar cuál es la primera línea vacía. Tal y como tú lo tienes puesto, siempre va a la línea 5 de Hoja2. Para eso se puede utilizar la propiedad End. Tu macro podría quedar de esta forma:

Sub Macro1()
Range("B1:B3").Select
Selection.Copy
Sheets("Hoja2").Select
If Cells(5, 1) <> "" Then
Range("a65000").End(xlUp).Offset(1, 0).Select
Else
Range("a5").Select
End If
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
Sheets("Hoja1").Select
Range("B1:B3").Select
Selection.ClearContents
Range("B1").Select
End Sub

Un saludo. Juanjo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar