Saltar al contenido

Seleccionar celdas con objSelection


elvago07

Recommended Posts

publicado

Estoy trabajando en un programa muy especifico para hacer distribuciones de folleteria. La Base de datos para armar el rotulado no es siempre la misma así que tengo que elegir bien las celda con las que voy a trabajar.

En el archivo que envío hay 3 hojas, las 2 mas importantes son "base original" De donde tomare los datos y "Base 1", donde los pondré.

MI problema esta en que selecciono bien las celdas con Objseleccion enla macro. Pero no copia la entera seleccion y solo me pega los datos que se encuentran en la primer celda seleccionada. Porque puede ser esto?

Dejo el archivo y de todas fromas pego la formula aqui.

Muchas Gracias por la ayuda.!! 

Sub Copiardatos1()

    Dim objSelection As Range
     ActiveWorkbook.Sheets("Base original").Select
    ' Preguntar al usuario para seleccionar el rango de trazar
    ' Y establecer el objeto de rango en el rango especificado.
    Set objSelection = Application.InputBox(Prompt:="Seleccione Codigo y Nombre de Concesionarias Unicamente", _
        Default:=Selection.Address, _
        Type:=8)

    ' Check to see if an appropriate selection was made.
    If objSelection.Cells.Count = 1 Then
        MsgBox "Debe seleccionar codigo y nombre de Consecionaria unicamente."
        Exit Sub
    End If
    Selection.Copy
    Sheets("Base 1").Select
    Range("A2").Select
    ActiveSheet.Paste

   
End Sub


 

Base.xls

publicado

Perdona, no estaría entendiendo donde poner.

despues de esto

 Set objSelection = Application.InputBox(Prompt:="Seleccione Codigo y Nombre de Concesionarias Unicamente", _
        Default:=Selection.Address, _
        Type:=8)

va

objSelection.Select

?

 

Porque si es asi. No Funciono. Perdón la Ignorancia.

publicado

El problema no esta en el Input esta en las lineas:

Prueba asi

Sub Copiardatos1()

    Dim objSelection As Range
    
     ActiveWorkbook.Sheets("Base original").Select
    ' Preguntar al usuario para seleccionar el rango de trazar
    ' Y establecer el objeto de rango en el rango especificado.
    Set objSelection = Application.InputBox(Prompt:="Seleccione Codigo y Nombre de Concesionarias Unicamente", _
        Default:=Selection.Address, _
        Type:=8)
    objSelection.Select

    ' Check to see if an appropriate selection was made.
    If objSelection.Cells.Count = 1 Then
        MsgBox "Debe seleccionar codigo y nombre de Consecionaria unicamente."
        Exit Sub
    End If
    Selection.Copy
    ActiveWorkbook.Sheets("Base 1").Select
    ActiveSheet.Range("A2").Select
    ActiveSheet.Paste

   
End Sub

publicado

Excelente. Funciono perfecto.!
Ahora voy a ver que fue lo que hice mal porque tengo que repetirlo en otros 3 macros.

 

Muchas Gracias!

 

Tema cerrado!

  • Silvia bloqueó este tema

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.