[RESUELTO] Pegar en la primera celda vacía de una linea.

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...

[RESUELTO] Pegar en la primera celda vacía de una linea.

Notapor markotxe » Dom May 05, 2019 9:16 pm

Buenas noche,
Mis conocimientos en macro son muy pobres y me enfrento a problemas muy básicos.

Me gustaría copiar el valor de una celda (por ej en "C8") y pegarla en la primera celda vacía de la misma línea.




Mis investigaciones, me han llevado a este código que me da vergüenza presentaros
Código: Seleccionar todo   Expandir vistaContraer vista
sub CopiarPegar
Dim MiDoc As Object, Hoja As Object
Dim Fuente As Object, Destino As Object
Dim i As Long
MiDoc = ThisComponent
Hoja = MiDoc.Sheets.GetByName("Kronos")
Fuente = Hoja.getCellRangeByName("C8")
for i = 4 To 133 step 1
Destino = Hoja.getCellByPosition(i,7)
Hoja.copyRange(Destino.CellAddress, Fuente.RangeAddress)
exit for     
next
end sub


Me disculpo ante mano si este tema a sido abordado y por no haber sabido adaptarlos.

Gracias por vuestra atención
Adjuntos
Copier-Coller.ods
(13.14 KiB) 2 veces
Última edición por markotxe el Lun May 06, 2019 11:19 am, editado 1 vez en total
OpenOffice 4.1.5 CALC, Window10
markotxe
 
Mensajes: 9
Registrado: Jue May 02, 2019 9:47 am

Re: Pegar en la primera celda vacia de una linea

Notapor FJCC-ES » Lun May 06, 2019 4:56 am

Código: Seleccionar todo   Expandir vistaContraer vista
'Option Explicit

sub CopiarPegar
Dim MiDoc As Object, Hoja As Object
Dim Fuente As Object, Destino As Object
Dim i As Long
MiDoc = ThisComponent
Hoja = MiDoc.Sheets.GetByName("Kronos")
Fuente = Hoja.getCellRangeByName("C8")
Rows = Hoja.getRows()
Row8 = Rows.getByIndex(7)
CeldasVacias = Row8.queryEmptyCells()
for i = 0 to CeldasVacias.Count - 1
   Rango = CeldasVacias.getByIndex(i)
   if Rango.RangeAddress.StartColumn > 2 then
      Celda = Hoja.getCellByPosition(Rango.RangeAddress.StartColumn, 7)
      Celda.Value = Fuente.Value
      Celda.NumberFormat = Fuente.NumberFormat
      exit for
   End if
next i

end sub
FJCC-ES
 
Mensajes: 672
Registrado: Mié Mar 25, 2009 1:19 am
Ubicación: Colorado, USA

Re: [RESUELTO]Pegar en la primera celda vacia de una linea

Notapor markotxe » Lun May 06, 2019 11:25 am

Hola FJCC-ES,
Su codigo funciona a la perfección, quiziera agradecerle por el interés que habeis dado a mi pregunta.
Pienso que esos temas muy basicos ayudaran a muchas personas qui como yo estan descubriendo el mundo de las macros.


Muchissimas gracias!
OpenOffice 4.1.5 CALC, Window10
markotxe
 
Mensajes: 9
Registrado: Jue May 02, 2019 9:47 am


Volver a Macros y API UNO

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 7 invitados