Estoy intentando hacer algo parecido a lo que se muestra en este vídeo
Código: Seleccionar todo
https://www.youtube.com/watch?v=wZMrOOU9iXs
Alguien por acá sabrá como hacerlo de forma correcta?
Código: Seleccionar todo
https://www.youtube.com/watch?v=wZMrOOU9iXs
Y obvio por el momento no funciona para LibreOffice ya que este tiene un Bug a la hora de copiar objetos entre celdas
Editado: Mensaje re, re, re, super reeditado |
No presuponga usted las acciones de los demás.Lo menos que esperaba, es al menos que intentaras hacerlo... ojala alguien pueda hacerlo por ti.
Saludos
Código: Seleccionar todo
uno = Trim(hoja.getCellRangeByName("C4").String)
dos = trim(hoja.getCellRangeByName("D4").String)
tres = trim(hoja.getCellRangeByName("E4").String)
For i = 0 To (Imagenes.count - 1)
if Imagenes.getByIndex(i).Name = uno then u = hoja.getCellRangeByName(uno) : imgU = Imagenes.getByIndex(i)
if Imagenes.getByIndex(i).Name = dos then d = hoja.getCellRangeByName(dos) : imgD = Imagenes.getByIndex(i)
if Imagenes.getByIndex(i).Name = tres then t = hoja.getCellRangeByName(tres) : imgT = Imagenes.getByIndex(i)
Next
imgU.Anchor = hoja.getCellRangeByName("C5")
imgD.Anchor = hoja.getCellRangeByName("D5")
imgT.Anchor = hoja.getCellRangeByName("E5")
Exactamente no lo hice, te escribí después de ver tu archivo que no trae nada, nos atenemos a lo escriben y muestran aquí, no podemos "presuponer" que es lo que hicieron o no.Pierrot-le-fou escribió: No presuponga usted las acciones de los demás.
Muchas gracias compañero, se agradece muchísimo el interés.fornelasa escribió:Hola a todos, creo sí es posible hacerlo, en cuanto pueda intentaré subir un archivo ejemplo, si antes no se me adelantan
Saludos, Federico.
Muchisimas gracias. Aunque no es exactamente lo que necesito, creo que puedo adaptarlo bastante bien a mis necesidades.fornelasa escribió:aquí una posible opción (por el momento solo se me ocurre esto), Pulsa el botón VLOOKUP para buscar y el botón acomodoInicial para regresar las imágenes a su estado original.
Las imágenes necesariamente deben estar en la misma hoja, en este caso están en la columna Q
Saludos, Federico.
Si, los ejemplos aquí plasmados son precisamente eso, ejemplos, para que los usuarios intenten adaptarlo a sus propias necesidades, no pretenden cubrir todos los casos.Aunque no es exactamente lo que necesito, creo que puedo adaptarlo bastante bien a mis necesidades.
A mi si me gustaría ver tu archivo, si se puede.Prometo subir mi fichero cuando lo tenga montado, por si a alguien más le puede ser de utilidad.
Por razones operativas, debo tener las imagenes en una hoja separada de la principal. He estado trasteando y no he sido capaz de copiar de una hoja a la otra:fornelasa escribió:Si, los ejemplos aquí plasmados son precisamente eso, ejemplos, para que los usuarios intenten adaptarlo a sus propias necesidades, no pretenden cubrir todos los casos.Aunque no es exactamente lo que necesito, creo que puedo adaptarlo bastante bien a mis necesidades.
Código: Seleccionar todo
Sub BuscarPicture()
oDoc = ThisComponent
oSheet0 = oDoc.Sheets(0)
oSheet1 = oDoc.Sheets(1)
Imagenes = oSheet0.GetDrawPage()
fin = 1000
for i = 0 To fin / 5 Step 5
dato = oSheet0.getcellbyPosition(0, i).String
for j = 0 To (Imagenes.count - 1)
If "clv" + Imagenes.getByIndex(j).Name = dato Then
Imagenes.getByIndex(j).Anchor = oSheet0.getCellByPosition(0, i)
End If
Next
Next
End Sub
Sub acomodarImagenes()
oDoc = ThisComponent
oSheet0 = oDoc.Sheets(0)
oSheet1 = oDoc.Sheets(1)
Imagenes = oSheet1.GetDrawPage()
fin = 1000
numd = -1
On Error GoTo Salir
for i = 0 To fin / 5 Step 5
numd = numd + 1
If Imagenes.getByIndex(numd).Name = "buscar" Or Imagenes.getByIndex(numd).Name = "acomodar" Then
numd = numd + 1
Else
Imagenes.getByIndex(numd).Anchor = oSheet1.getCellByPosition(2, i) 'Columna B Hoja 'Fotos'
End If
Next
Salir:
End Sub
Código: Seleccionar todo
hoja.copyRange(hoja.getCellRangeByName("D5").cellAddress, u.rangeAddress)
Si usas LIbreOffice como dice tu firma, o las ponemos en la misma hoja o las ponemos en la misma hoja, no hay otra manera en LO.fornelasa escribió:
Y obvio por el momento no funciona para LibreOffice ya que este tiene un Bug a la hora de copiar objetos entre celdas
Me queda claro, de hecho lo mencionaste al subir el ejemplo pero por algún motivo se me pasó.fornelasa escribió:La propiedad Anchor no soporta las imágenes entre hojas pero es la única en LibreOffice que nos puede ayudar para este tema, lo correcto sería usar por ejemplo:pero como ya se ha mencionado LO tiene un bug en este tema en el copiado de imágenes.Código: Seleccionar todo
hoja.copyRange(hoja.getCellRangeByName("D5").cellAddress, u.rangeAddress)
Si usas LIbreOffice como dice tu firma, o las ponemos en la misma hoja o las ponemos en la misma hoja, no hay otra manera en LO.fornelasa escribió:
Y obvio por el momento no funciona para LibreOffice ya que este tiene un Bug a la hora de copiar objetos entre celdas
Saludos, Federico.