Mantenha Colar Links Especiais Contidos em uma Pasta Copiada / Pastada e Renomeada

2

Tenho links dos Gráficos do Excel para os slides do PowerPoint, usando a opção Colar vínculo especial, para que, quando o Powerpoint for aberto, os gráficos possam ser atualizados facilmente. Os arquivos do Powerpoint e do Excel estão todos contidos na mesma pasta, mas as informações precisam ser atualizadas mensalmente. Minha empresa quer criar uma nova pasta para cada mês, então há um arquivo de informações para os meses anteriores.

Eu pensei que havia uma maneira de copiar / colar a pasta com os links e renomeá-la, mantendo os links contidos na pasta recém-renomeada, já que tudo está junto e não há links que apontam para fora da pasta. No entanto, quando eu verificar o PowerPoint na nova pasta, os links ainda apontam para os arquivos do Excel na pasta original. Assim, os links vão de apontar para arquivos dentro da pasta para apontar para arquivos fora da pasta.

Eu sei que posso editar os links para apontar para a nova pasta, e leva apenas cerca de 10 minutos neste caso, porque há tão poucos deles, mas eu quero saber se existe uma maneira de manter os links contidos automaticamente.

A primeira vez que tentei copiar / colar / renomear esta manhã, acabei de substituir um pequeno número de arquivos na pasta original, salvando-os com cópias novas enviadas por e-mail para mim mesmo de casa. Quando eu olhei para o PowerPoint na pasta recém-renomeada dessa vez, esses arquivos específicos atualizaram seus caminhos para corresponder à nova pasta, mas os outros não. Eu passei e re-vinculei todos os gráficos, incluindo os dos arquivos sobrescritos, na pasta antiga, depois repeti o copy / paste / rename. Eu verifiquei o PP nesta nova pasta e todos os links apontavam para a pasta antiga e nenhum apontava para a nova pasta. Não tenho certeza se foi um golpe de sorte que aqueles poucos escolhidos atualizaram seus links ou não.

Eu tentei encontrar a resposta em outro lugar, mas parece que não consigo encontrar nada que dê uma boa resposta "Não, não é possível" ou "Veja como você faz isso".

Idéias? Sugestões? Soluções? Ou terei que atualizar manualmente os links toda vez que uma nova pasta for criada?

    
por Grymmlock 17.07.2017 / 20:19

3 respostas

0

Outra abordagem:

Em vez de copiar / colar em uma nova pasta sempre que houver uma atualização, copie os arquivos atualizados para a mesma pasta sempre:

Janeiro: Coloque o arquivo do Excel e o arquivo PPT na pasta \ CurrentMonth. Crie links conforme necessário.

Fevereiro: Copie o arquivo do Excel de \ CurrentMonth para \ January e copie o novo arquivo do Excel para \ CurrentMonth, sobrescrevendo o antigo arquivo do Excel.

E assim por diante para cada mês. Altere os nomes dos diretórios para o que for apropriado.

    
por 19.07.2017 / 17:02
2

Não há como usar o copiar e colar. Mas, como solução alternativa, você pode usar

A solução mais fácil: use caminho relativo em hiperlinks

Se você tiver seus arquivos na mesma pasta, por exemplo:

Monthly Report Calculation.xlsx e Monthly Report.pptx

Então você pode linkar entre PPTX e XLSX em ambas as direções se você usar caminhos relativos.

No PowerPoint , certifique-se de criar um link para Monthly Report Calculation.xlsx (que é basicamente .\Monthly Report Calculation.xlsx , um caminho relativo ao diretório atual do arquivo PPTX) e não para D:\Data\Monthly Report Calculation.xlsx (que é absoluto caminho).

No Excel , você pode usar a seguinte fórmula dentro de seu Monthly Report Calculation.xlsx :

=HYPERLINK("Monthly Report.pptx")

Ou também com o nome de exibição amigável:

=HYPERLINK("Monthly Report.pptx", "Monthly Report")

Agora você pode copiar seus arquivos onde quiser e os links do PowerPoint para o Excel e voltar funcionará em qualquer diretório onde esses arquivos permaneçam juntos.

Lembre-se de que o caminho mostrado na fórmula do Excel foi inserido como relativo, para que você possa percorrer os diretórios, se precisar:

=HYPERLINK("..\Presentations\Monthly Report.pptx", "Monthly Report")

O mesmo diretório referenciando funciona na caixa Hiperlink no PowerPoint. Testado.

Outra possibilidade é criar um código VBA personalizado para atualizar os hiperlinks e iniciá-lo todo mês. Se você verificar uma das respostas, você deve ter a idéia.

Uma abordagem ou outra, não espere funcionalidades específicas prontas para uso. Você precisa ajustar o processo ao seu lado (faça de maneira diferente) ou crie um código para realizar tarefas específicas para o seu ambiente e processos.

    
por 19.07.2017 / 17:11
0

Esta página da Web fornece uma macro de pesquisa e substituição para o PowerPoint. Eu não testei isso, mas a solução dessa página é a seguinte:

Solução

Esta macro perguntará qual texto você deseja pesquisar e com o que deseja substituí-lo. Em seguida, ele analisará cada hiperlink em sua apresentação e fará a pesquisa / substituição no Endereço e no Subendereço do hiperlink.

Este é o código:

Option Explicit

Sub HyperLinkSearchReplace()

    Dim oSl As Slide
    Dim oHl As Hyperlink
    Dim sSearchFor As String
    Dim sReplaceWith As String
    Dim oSh As Shape

    sSearchFor = InputBox("What text should I search for?", "Search for ...")
    If sSearchFor = "" Then
        Exit Sub
    End If

    sReplaceWith = InputBox("What text should I replace" & vbCrLf _
        & sSearchFor & vbCrLf _
        & "with?", "Replace with ...")
    If sReplaceWith = "" Then
        Exit Sub
    End If

    On Error Resume Next

    For Each oSl In ActivePresentation.Slides

        For Each oHl In oSl.Hyperlinks
            oHl.Address = Replace(oHl.Address, sSearchFor, sReplaceWith)
            oHl.SubAddress = Replace(oHl.SubAddress, sSearchFor, sReplaceWith)
        Next    ' hyperlink

        For Each oSh In oSl.Shapes
            If oSh.Type = msoLinkedOLEObject _
            Or oSh.Type = msoMedia Then
                oSh.LinkFormat.SourceFullName = _
                    Replace(oSh.LinkFormat.SourceFullName, _
                    sSearchFor, sReplaceWith)
            End If
       Next

    Next    ' slide

End Sub

Limitações

  • A macro só funciona no PowerPoint 2000 ou superior. Não será executado em PowerPoint 97 (por causa do comando Substituir, que não é suportado em 97).
  • A macro só funciona em hiperlinks e links OLE, não em ações definições. Mas algumas configurações de ação (a maioria das Link To ones) são hiperlinks também, então links para outros arquivos, sejam hyperlinks ou configurações de ação, geralmente funcionam com essa macro.

Veja Como eu uso o código VBA no PowerPoint? para aprender a usar este código de exemplo.

    
por 17.07.2017 / 20:35