Download de múltiplos arquivos via Excel

Neste caso basta informar o dados nas células de uma planilha e ler eles através da macro:

Sub DownloadEUnzip()
      ‘Declaração de variáveis
      Dim FSO, oApp As Object
      Dim objHttp, DefPath, Arquivo, aUrl, aPasta As String
      Dim Dados() As Byte
      Dim Fname As Variant
      Dim FileNameFolder As Variant
      Dim iFileNumber As Long
     
      For i = 1 To 20
          
         ‘Parâmetros iniciais (personalizáveis)
         aUrl = Cells(i, 1).Value
         aPasta = Cells(i, 2).Value
         Arquivo = aPasta & Cells(i, 3).Value
       
         ‘Download do Arquivo
         Set objHttp = CreateObject(“MSXML2.ServerXMLHTTP”)
         objHttp.Open “GET”, aUrl, False
         objHttp.Send
         If objHttp.Status = “200” Then
             Dados = objHttp.ResponseBody
             iFileNumber = FreeFile
             Open Arquivo For Binary Access Write As #iFileNumber
             Put #iFileNumber, 1, Dados
             Close #iFileNumber
         End If

 

Basta ter informado os URLs na primeira coluna, as pastas onde deve guardar os arquivos na segunda e o nome deles na terceira.

É importante salientar que as pastas já devem existir e não podem haver arquivos com o mesmo nome nas pastas.

Caso deseje descompactar os arquivos após o download:

Sub DownloadEUnzip()
      ‘Declaração de variáveis
      Dim FSO, oApp As Object
      Dim objHttp, DefPath, Arquivo, aUrl, aPasta As String
      Dim Dados() As Byte
      Dim Fname As Variant
      Dim FileNameFolder As Variant
      Dim iFileNumber As Long
     
      For i = 1 To 20
          
         ‘Parâmetros iniciais (personalizáveis)
         aUrl = Cells(i, 1).Value
         aPasta = Cells(i, 2).Value
         Arquivo = aPasta & Cells(i, 3).Value
       
         ‘Download do Arquivo
         Set objHttp = CreateObject(“MSXML2.ServerXMLHTTP”)
         objHttp.Open “GET”, aUrl, False
         objHttp.Send
         If objHttp.Status = “200” Then
             Dados = objHttp.ResponseBody
             iFileNumber = FreeFile
             Open Arquivo For Binary Access Write As #iFileNumber
             Put #iFileNumber, 1, Dados
             Close #iFileNumber
         End If
        
         ‘Descompactação o arquivo
         If Right(aPasta, 1) <> “\” Then
            aPasta = aPasta & “\”
         End If
         FileNameFolder = aPasta
         Set oApp = CreateObject(“Shell.Application”)
         oApp.Namespace(FileNameFolder).CopyHere oApp.Namespace(Arquivo).items
    Next
   End Sub

Download de arquivos via Excel

Aqui vai uma versão mais genérica do post anterior, para download de arquivos via Excel:

Sub DownloadEUnzip()
      ‘Declaração de variáveis
      Dim FSO, oApp As Object
      Dim objHttp, DefPath, Arquivo, aUrl, aPasta As String
      Dim Dados() As Byte
      Dim Fname As Variant
      Dim FileNameFolder As Variant
      Dim iFileNumber As Long
     
      ‘Parâmetros iniciais (personalizáveis)
      aUrl = “
http://www1.caixa.gov.br/loterias/_arquivos/loterias/D_lotfac.zip
      aPasta = “C:\loteria\temp\”
      Arquivo = aPasta & “D_lotfac.zip”
    
      ‘Download do Arquivo
      Set objHttp = CreateObject(“MSXML2.ServerXMLHTTP”)
      objHttp.Open “GET”, aUrl, False
      objHttp.Send
      If objHttp.Status = “200” Then
          Dados = objHttp.ResponseBody
          iFileNumber = FreeFile
          Open Arquivo For Binary Access Write As #iFileNumber
          Put #iFileNumber, 1, Dados
          Close #iFileNumber
      End If
End Sub

Efetuando download de arquivo zipado, pelo Excel e descompactando ele

Hoje no forum havia um usuário com esta necessidade, como creio que a resposta que dei para ele será útil para mais gente, posto aqui o código:

Sub DownloadEUnzip()
      Dim FSO, oApp As Object
      Dim objHttp, DefPath, Arquivo As String
      Dim Dados() As Byte
      Dim Fname As Variant
      Dim FileNameFolder As Variant
      Dim iFileNumber As Long
      Set objHttp = CreateObject(“MSXML2.ServerXMLHTTP”)
      objHttp.Open “GET”, “http://www1.caixa.gov.br/loterias/_arquivos/loterias/D_lotfac.zip”, False
      objHttp.Send
      DefPath = “C:\Loteria\Temp\”    ‘<<< Altere aqui
      Arquivo = DefPath & “D_lotfac.zip”
      If objHttp.Status = “200” Then
          Dados = objHttp.ResponseBody
          iFileNumber = FreeFile
          Open Arquivo For Binary Access Write As #iFileNumber
          Put #iFileNumber, 1, Dados
          Close #iFileNumber
      End If
      If Right(DefPath, 1) <> “\” Then
         DefPath = DefPath & “\”
      End If
      FileNameFolder = DefPath
      Set oApp = CreateObject(“Shell.Application”)
      oApp.Namespace(FileNameFolder).CopyHere oApp.Namespace(“C:\Loteria\Temp\D_lotfac.zip”).items
  End Sub

Abrindo um documento PDF em uma página específica

Suponhamos que você tenha uma biblioteca de documentos PDF em uma pasta compartilhada na sua rede e deseje adicionar um link no seu SharePoint para abrir o documento em uma página específica.

Como fazer isso? Simples, basta usar os Open Parameters da Adobe.

  1. Adicione um novo link no SharePoint;
  2. Aponte ele para o arquivo PDF que deseja abrir;
  3. Após o nome do arquivo adicione o parâmetro. Ex.: \\computador\pasta\arquivo.pdf#page=10 (este URL envia você direto para a página 10 do documento).

Como funcionam os Open Parameters?

Simples, basta adicionar um sustenido (#) após o .PDF para informar que usará parâmetros e caso deseje utilizar mais de um parâmetro, adicione-os usando um “e” comercial (&).

Quais parãmetros posso usar?

  • Capítulo – Ex.: #Chapter2;
  • Página – Ex.: #page=3;
  • Zoom – Ex.: #Zoom=50;
  • Página e múltiplas opções de Zoom – Ex.: #page=3&Zoom=200,250,100;
  • Visualização – Ex.: #page=2&view=fitH.

Relação completa de parâmetros em: http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/pdf_open_parameters_v9.pdf

MVP 7.0

Queridos amigos,

fico muito feliz de compartilhar com vocês, que pelo 7º ano consecutivo fui agraciado pela Microsoft com o título de MVP (Most Valuable Professional)!

O que é MVP?

Os MVPs (Most Valuable Professionals) Microsoft são pessoas reconhecidas, confiáveis e acessíveis, que têm experiência em um ou mais produtos Microsoft® e que participam ativamente de comunidades on-line e off-line com o intuito de compartilhar seu conhecimento e experiência com outros clientes Microsoft. Os clientes desejam um acervo rico de conhecimentos e experiências da vida real quando recorrem a conselhos e feedbacks. Os MVPs ajudam a satisfazer essa necessidade, capacitando de forma independente os clientes nas comunidades técnicas, tanto on-line como off-line. O feedback do cliente é vital para o desenvolvimento de produtos e de R&D (recursos e desenvolvimento). Os MVPs representam uma parte importante desse circuito de feedback, já que proporcionam outro canal para que a Microsoft escute o cliente.

O programa Most Valuable Professional é a maneira pela qual a Microsoft reconhece formalmente as contribuições desses indivíduos para a comunidade. Ele tem por objetivo estimular uma comunidade global vibrante, onde a Microsoft e os clientes se conheçam por meio de relacionamentos permanentes e valiosos. As principais estratégias empregadas pelo programa são:

Reconhecer os MVPs do mundo todo e se envolver com eles — identificar, capacitar e fortalecer os formadores de opinião da comunidade, implementando um relacionamento de qualidade consistente entre o cliente e a Microsoft que transponha os grupos de produtos, serviços e a linha de frente das organizações.

Aumentar a satisfação do cliente e sua conexão com ele — reconhecer os clientes por seus esforços e melhorar a qualidade da experiência em suas áreas e em seus idiomas.

Orientar a excelência do programa — profissionalização de serviços e ofertas ao cliente, de modo a tornar as responsabilidades e funções mais previsíveis e controláveis para os clientes internos e externos das comunidades Microsoft.

O Programa MVP, existente há mais de onze anos, é representado por mais de 2.800 MVPs em 81 países.

Nesta foto os MVPs do Brasil no Heliponto da sede da Microsoft em São Paulo.