Macro para incluir várias imagens em documento Microsoft Word




Que falta de inspiração!

Vamos ao que interessa.

Na Faculdade me deparei com um grande problema. As vezes estou lendo textos online onde há imagens e fórmulas mas que não tem a opção de baixar para meu o computador. E o pior é que tenho um tablet e gostaria muito de ler aquele texto no momento que estou ocioso, como por exemplo, na hora do almoço.

Pensando nisto, pesquisei na internet e achei alguns programas que podem ser usados para captura de telas e elas são gravadas em uma pasta como imagem de extensão JPEG. Até ai tudo bem, ficarei com aproximadamente 200 imagens que posso copiar para o tablet e com qualquer leitor de imagem, posso ver a mesma.

Mas, estou querendo é mais que isto. Quero que estas imagens sejam todas colocadas em um único arquivo de texto (e colocar 200 imagens só clicando em Inserir/Imagem/Do arquivo... não é fácil ) para acrescentar alguns comentários e após isto transformar tudo em PDF.

Com o texto em PDF, é só passar para o tablet e ai posso ler minhas aulas tranquilamente.

Como não achei um software que o fizesse...

Para quem tem o Microsoft Word instalado no computador eu tenho uma solução. Estou desenvolvendo uma macro para este fim. Que a macro faça a leitura das imagens que estão em uma determinada pasta em meu computador e inclua as imagens no Documento do Microsoft Word. Após fazer os comentários necessários é só usar um programa que transforme o Documento MS Word em PDF.

OBS.: Ainda estou melhorando esta macro. O que me falta é tempo para a terminar, mas até aqui já resolve muita coisa.

Veja abaixo a Macro.

Attribute VB_Name = "NewMacros"

'Autor: Acilon J Santos
'Data: 8/6/2013
'Versão: Beta

Sub testeimagem()

Attribute testeacilon.VB_Description = "Macro gravada 5/8/2013 por Acilon J Santos"
Attribute testeacilon.VB_ProcData.VB_Invoke_Func = "Normal.NewMacros.testeimagem"

' testeimagem Macro
' Macro gravada 5/6/2013 por Acilon J Santos

Dim I As Integer
Dim strI As String
Dim strFile1 As String
Dim strFile2 As String
Dim strCaminho As String
Dim Message, Title, Default, MyValue

'Local onde esta gravado as imagens
'
strFile1 = "E:\PrintScreen Files\ScreenShot" 
strFile2 = ".bmp"

' Lê a quantidade de figuras a ser inserida
' no documento ativo.
Message = "Digite a quantidade de imagens"    ' Define o aviso.
Title = "Quantidade de Imagens"               ' Define o título.
Default = "1"    ' Define o padrão.

' Exibe a mensagem, o título e o valor padrão.
MyValue = InputBox(Message, Title, Padrão)

For I = 1 To MyValue
   strI = strFile1 + Trim(CStr(I)) + strFile2
   If I <= 9 Then
        strI = strFile1 + "00" + Trim(CStr(I)) + strFile2
    Else
    If I <= 99 Then
        strI = strFile1 + "0" + Trim(CStr(I)) + strFile2
    Else
        strI = strFile1 + Trim(CStr(I)) + strFile2
    End If
   End If

    Selection.InlineShapes.AddPicture FileName:= _
        strI, LinkToFile:=False, _
        SaveWithDocument:=True
    'Windows("Doc1.doc").Activate
    Windows("Documento1").Activate
    Application.WindowState = wdWindowStateNormal
    Application.WindowState = wdWindowStateMinimize
    'Windows("Doc1.doc").Activate
    Windows("Documento1").Activate
    Application.WindowState = wdWindowStateNormal

Next I

FimDoProcesso:
Dim Msg, Style
Msg = "Processo concluido"                ' Define a mensagem.
Style = vbOK + vbInformation + vbOKOnly   ' Define os botões.
Title = "Inclusão de imagens"             ' Define o título.
MsgBox Msg, Style, Title
End Sub


Esta publicação dedico aos amigos da EAD da Estácio de Sá.
Pessoal em caso de dúvidas e sugestões, favor postar comentários. Valeu!

3 Comentários

  1. Prefiro dar um Dir no diretório do tipo:
    E:
    CD\PrintScreen Files\ScreenShot
    dir > c:\imagens.txt
    Todas as imagens serão inseridas no arquivo de texto imagens.txt, aí no word tem que trabalhar com coisa do tipo
    open c:\imagens.txt for input as #1
    trabalhar com left, right, mid para arrancar somente o nome das imagens e inserí-las no Word.

    ResponderExcluir
    Respostas
    1. Sim, também pode ser feito desta forma. Ela é um pouco trabalhosa para quem não tem experiência com macros no Microsoft Office. : )

      Excluir
  2. ola vc tem esta macro ja pronta em documento pois nao sei criar macro
    Macro para incluir várias imagens em documento MS Word

    ResponderExcluir

Postar um comentário

Postagem Anterior Próxima Postagem