Amigos da lista, tenho uma tabela no calc seno coluna 1 matrícula, coluna 2 nome e na coluna 3 gostaria de inserir a foto (associados de uma pequena associação). Na questão Tabela para controle de pagamentos dos sócios, o Gilberto passou-me a solução para controle dos pagamentos mensais. Agora tô quebrando cabeça para fazer aparecer a foto do sócio em que, com a função PROCV, ÍNDICE ou CORRESP visualizo o nome pela matrícula. Ou seja, cada vez que trocar a matrícula em uma célula, retorna também o nome e (deveria) a foto. Se eu inserir imagem na coluna 3, (cada linha com a respectiva foto), o calc não acha a figura na célula. Estive pesquisando e achei solução para o Excel: clicar na figura e na barra de fórmula colar a fórmula que retorna a célula da coluna 3 associada a matrícula. Alguém sabe como fazer o calc achar a imagem na célula ou até em um arquivo externo. Agradeço a ajuda. Hermeto - Barra do Quaraí/RS
Olá, @HermetoMenezesSilva
Veja se te ajuda. Contém o link da fonte da wiki. Lá vc pode encontrar diversas outras coisas relacionado a imagens e bordas.
Temos também esse post
Sub AddImg
'Fonte: https://wiki.openoffice.org/wiki/Documentation/BASIC_Guide/Structure_of_Drawings#Moving_a_Page
Dim GraphicObjectShape As Object
Dim Point As New com.sun.star.awt.Point
Dim Size As New com.sun.star.awt.Size
Dim Page As Object
Dim oImg as String
Dim VerificaImagem as String
oDoc = ThisComponent
Page = oDoc.DrawPages(1) 'Indica a posição da planilha - de 0 a total de planilhas
oPlan = oDoc.Sheets.getByName("Planilha1")
oImg = oPlan.getCellRangeByName("R14").String 'local do link da imagem
'posição onde ela será inserida e seu
Point.x = 9700
Point.y = 6990
'tamanho da imagem
Size.Width = 6085
Size.Height = 3500
GraphicObjectShape = oDoc.createInstance("com.sun.star.drawing.GraphicObjectShape")
GraphicObjectShape.Size = Size
GraphicObjectShape.Position = Point
GraphicObjectShape.GraphicURL = ConvertToUrl(oImg)
GraphicObjectShape.LineStyle = com.sun.star.drawing.LineStyle.SOLID
GraphicObjectShape.LineColor = RGB(0,0,0)
Page.add(GraphicObjectShape)
End Sub
Caso queira utilizar caixa de controle de imagem, segue abaixo. Neste caso precisará utilizar controle de seleção de arquivo
Sub AddImagem (oEvento)
Dim sName as String
oDoc = ThisComponent
oFormulario = oEvento.Source.Model.Parent
oColetaLink = oFormulario.getByName ("ColetaLink")
sName = oColetaLink.Text
'fonte: https://forum.openoffice.org/en/forum/viewtopic.php?f=9&t=82454
oButton=oEvento.source.model
oFormulario=oButton.parent
oImage=oFormulario.getbyname("ImgLanc")
oImage.imageurl=ConvertToUrl(sName)
oImage.reset
End Sub
Ola @HermetoMenezesSilva, na tabela das associados deve-se incluir o nome da foto ou a foto ser o nome do associado e estar em uma pasta. Partindo deste ponto quando for gerar o formulário de um associado, ter um acionador de macro que pelo nome (sugestão) busque a foto na pasta e cole no lugar desejado ( ou onde estiver o cursor).
De uma olhada neste exemplo do @Beto: