Excel VBA para extrair hiperlink da fórmula de hiperlink

0

Estou tentando escrever código VBA para validar links na planilha. Eu tenho que funcionar bem até que eu encontrei hiperlinks criados a partir da fórmula. Por exemplo, =Hyperlink(A1,"Link1") ou =Hyperlink(A1&A2,"Link2")

O padrão Hyperlinks(1).Address VBA não os registra como tendo um link, e não consigo encontrar outras soluções on-line.

Alguma idéia?

    
por aliw1 12.04.2018 / 12:14

1 resposta

0

Aqui está uma abordagem simples que lidará com algumas suas fórmulas. Diga A1 contém a fórmula:

=HYPERLINK("http://www.google.com","search")

Se selecionarmos e executarmos:

Sub HyperChecker()
    Dim s1 As String, s2 As String, arr

    s1 = ActiveCell.Formula
    s2 = Mid(s1, 12)
    arr = Split(s2, ",")
    MsgBox arr(0)
End Sub

temos:

O código descarta o início e o final da fórmula e retorna o URL.

O problema surge se o primeiro argumento da função é uma expressão em vez de uma constante cadeia .

Você precisaria então EVALUATE() dessa expressão.

    
por 12.04.2018 / 13:24