Torna todas as instâncias de uma palavra um hyperlink no OpenOffice

0

Como posso fazer cada instância de uma palavra, um hiperlink para um arquivo no meu computador?

Eu consegui fazer isso com uma instância da palavra, mas repetir isso é demorado, então espero que o programa em si possa fazê-lo.

Eu também gostaria de usar as variáveis de sistema% windir% e% userprofile% no arquivo.

Aqui está o que eu tentei:

% windir% \ system32 \ shell32.dll

No entanto, isso é substituído (e falha) pelo Openoffice para ficar assim:

"% 25windir% 25 \ system32 \ shell32.dll"

Se eu adicionar aspas duplas, o openoffice adicionará outro par ao caminho e isso também fará com que o Windows não encontre o arquivo.

Eu olhei em editar > Arquivo & Substitua, mas não veja nenhuma opção para substituir todas as instalações de uma palavra por um hiperlink para um arquivo, mantendo a mesma palavra.

    
por user6457127 17.06.2016 / 00:30

1 resposta

0

Primeiro, selecione o link existente que você criou e copie-o. Em seguida, execute essa macro, que localizará todas as ocorrências de "TheWordToLink" e cole o link nesses locais.

Sub PasteHyperlinks
    Dim vDescriptor, vFound, oVC
    Dim document, dispatcher
    oVC = ThisComponent.CurrentController.ViewCursor
    document   = ThisComponent.CurrentController.Frame
    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
    vDescriptor = ThisComponent.createSearchDescriptor()
    With vDescriptor
        .SearchString = "TheWordToLink"
        .SearchWords = True
        .SearchCaseSensitive = False
    End With
    vFound = ThisComponent.findFirst(vDescriptor)
    Do While Not IsNull(vFound)
        oVC.gotoRange(vFound, False)
        dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())
        vFound = ThisComponent.findNext( vFound.End, vDescriptor)
    Loop
End Sub

O código de busca e substituição foi retirado da seção 7.14 do documento macro de Andrew Pitonyak .

Em relação às variáveis de ambiente, isso requer uma solução mais difícil. Ou seja, chame uma macro do link e, em seguida, a macro executará a chamada do sistema para o arquivo. Se você estiver usando o Basic:

  1. Consulte o link para saber como fazer com que um hiperlink chame uma macro.
  2. Consulte Criando links automáticos no OpenOffice para obter um código que possa encontrar e criar os hiperlinks .
  3. Consulte o link para uma macro que usa uma variável de ambiente em um caminho.
  4. Consulte o link para as chamadas do sistema.
por 17.06.2016 / 02:39