Macro - colar como hiperlink

Olá, gostaria de saber como colocar na macro para que cole como hiperlink o dado copiado. A exemplo dessa resposta do Grafeno: Definir-o-endereco-de-colagem que cola “value” número e “strings” textos.

Bom dia,

Não existe um tipo de conteúdo “hiperlink” como existe value (valor), string (texto) ou formula. Mas, olhando para as formulas do Calc, existe a função HIPERLINK(), que acho bastante interessante.

Então, o que pode ser feito é pegar o dado, convertê-lo em uma URL e inseri-lo numa expressão com sintaxe da função HIPERLINK().

Exemplo: Assumindo que na célula A1 da aba “Planilha1” contenha o endereço D:\Exemplo\Outro arquivo.ods podemos inserir a função Hiperlink por macro em B1:

Sub Main
Dim oPlan As Object
Dim sURL As String
   
   oPlan = ThisComponent.Sheets.getByName( "Planilha1" )

   sURL = convertToURL( oPlan.getCellRangeByName("A1").String )
   
   oPlan.GetCellRangeByName( "B1" ).FormulaLocal = "=HIPERLINK(""" & sURL & """)"
End Sub

Atte,

Obrigado, colega! Era isso mesmo.

Só fiquei com uma dúvida, se eu quero colar o hiperlink em outra planilha, como eu faria?

@Beto, Acrescente a linha:

''
oPlan2 = ThisComponent.Sheets.getByName( "Planilha2" )
''

e troque a última por:

''
oPlan2.GetCellRangeByName( "B1" ).FormulaLocal = "=HIPERLINK(""" & sURL & """)"
''

Atte,

Obrigado, novamente!