br
Português    
Ing
English and Others      

b IMPRESSOR DE XLS PORTÁVEL
para Microsoft Excel

Download   Home  Anúncios

Este utilitário é um COM add-in ou add-in (.xla) programado em Microsoft® Visual Basic® for Application (VBA) que possibilita gerar um arquivo XLS (ou XLSX) a partir de uma planilha de outro XL aberto no Microsoft Excel® resumindo apenas os dados imprimíveis na área de impressão definida. O XLS gerado e o seu original são iguais quando são impressos e quando são exibidos na tela, mas o XLS gerado é mais portável, pois só tem os dados necessários para produzir a mesma impressão. E, como qualquer outro arquivo, pode ser enviado por email ou transferido usando uma unidade de CD, DVD, drive USB ou conexão de rede. Ele também fica fácil de compartilhar, pois é possível exibi-lo em qualquer computador ou em ambiente de computação na nuvem que tenha um visualizador de planilha atual instalado, mesmo se não tiver a versão do Excel usada e necessária para criar o XL original com toda a sua possível complexidade de formulas, filtros, links, macros etc. Esta solução também evita o envio desnecessário de dados com direitos autorais e de dados ocultos ou filtrados no XL original que requerem privacidade como um todo.

A impressão aqui para um XLS Portável do Excel é similar à impressão para um PDF da Adobe, mas com algumas vantagens:

- Programas capazes de visualizar arquivos XLS básicos são amplamente mais instalados do que visualizadores de PDF;

- É mais fiel ao original, pois ainda é uma planilha;

- Por ser planilha possibilita maiores facilidades e recursos de edição se eventuais alterações ou complementos forem necessários tais como formatação, inclusão de textos e fórmulas antes de ser encaminhada para um destinatário que, por sua vez, pode fazer alterações e retornar com dados de resposta que podem ser captados para o XL original. Tudo isso feito por interface de usuário ou por código VBA. Veja as figuras abaixo.

Ele consiste de um único arquivo, o PortblXLSPrinter.dll, que é de aproximadamente 190 kb em tamanho e pode ser instalado automaticamente. Exceto para a DLL, nenhuma outra configuração é salva no Registro do Microsoft Windows®. Sua configuração é salva nos arquivos PortblXLSPrinter.ini e PortblXLSPrinter.xlam que são criados e mantidos pelo próprio utilitário. Você pode desinstalá-lo total e automaticamente, não deixando nenhuma sujeira no Registro do seu Windows ou disco.

Itens a seguir nesta página:

Características

Download

Figuras

Função fPortblXLSPrinter() em VBA

Função fGetVersion() em VBA

Características:

- O utilitário faz uma cópia especial de uma planilha captando só os dados necessários para produzir uma impressão ou visualização na tela idêntica à planilha original;

- Ao captar somente dados imprimíveis, o tamanho do arquivo é reduzido e evita enviar dados confidenciais, fórmulas, links e segredos autorais. As opções de configuração da planilha especial serão as mesmas da planilha original: tamanho do papel, orientação, cabeçalho, rodapé, margens etc. Esses são os diferenciais e as grandes vantagens deste utilitário em relação às soluções diretas oferecidas pelo Excel para o envio de planilha ou de área de impressão por e-mail. Para mais informações sobre essas soluções, veja o excelente estudo feito por Ron de Bruin em: http://www.rondebruin.nl/sendmail.htm;

- A planilha criada pode opcionalmente ser protegida contra alterações por uma senha padrão criada aleatoriamente a cada execução ou por uma senha informada por você;

- O utilitário salva a pasta de trabalho da planilha criada como um arquivo XLS ou XLSX, aqui denominado apenas de XLS Portável, independentemente de qual seja a extensão;

- Suporta abrir um XLS Portável salvo anteriormente e adicionar novas planilhas. Assim, um único XLS Portável pode conter a impressão de todas as planilhas de uma ou mais pastas de trabalho;

- Em uma única execução, é possível imprimir qualquer das planilhas em qualquer das pastas de trabalho já abertas no Excel, incluindo planilhas de macro, para um ou mais arquivos XLS Portáveis;

- Ao salvar um XLS Portável do Excel, pode imediatamente comprimi-lo para um arquivo zip, reduzindo ainda mais o tamanho do arquivo a portar;

- Ao salvar um XLS Portável do Excel, pode imediatamente anexar o mesmo ou sua versão zipada a uma mensagem de e-mail que você pode verificar e então enviar pelo Microsoft Outlook® ou outro recipiente de e-mail padrão no Windows. Ele pode compor o e-mail com dados padrão ou capturar endereço, assunto e mensagem de texto na célula ativa e suas adjacentes, procurando para baixo ou para direita. Estas células, normalmente, devem ficar fora da área de impressão definida que vai como anexo;

- Ao salvar um XLS Portável, pode imediatamente salvá-lo como pagina da Web (htm, html). Assim, seu XL original com toda a possível complexidade de formulas, filtros, links, macros etc. possibilitado pelo Excel pode ser exibido na Web tal como impresso ou como visualizado na tela de seu computador enviando apenas os dados necessários e suficientes para tal, economizando banda e evitando o envio desnecessário para área pública de dados com direitos autorais e de dados ocultos ou filtrados no XL original que requerem privacidade como um todo;

- Um XLS Portável é útil sempre que o necessário para uma impressão idêntica seja menor do que todo o conteúdo da planilha e particularmente quando enviando planilhas contendo autofiltro que filtre apenas algumas dezenas de linhas entre milhares ou quando há informação no original que seja confidencial em partes ou quando vista no todo;

- Em envio de arquivo para impressão direta, um XLS Portável tem a grande vantagem no tamanho em bytes em relação a um arquivo do tipo gráfico (ex. TIF) ou a um arquivo do tipo binário de impressão (ex. PRN). E ainda o destinatário pode usar o Excel para visualizar a planilha ou editá-la, se não protegida, e para imprimir em diferentes tipos de impressora;

- Depois de instalado, o utilitário é chamado a partir do Menu Arquivo do Excel > Comando Impressor de XLS Portável... ou, no Excel 2007, a partir do Botão do Office > Botão Split Impressor Portável > Comando Impressor de XLS Portável ou, no Excel 2010 ou 2013, a partir do Menu Arquivo > Guia Impr. de Arquivo > Comando Impressor de XLS Portável.

- Pode ser chamado diretamente a partir de qualquer código VBA através das funções fPortblXLSPrinter() e fGetVersion(). Veja, logo abaixo das figuras, uma descrição detalhada destas funções e exemplos de aplicativos em VBA que a usam;

- Ocupa menos de 190 Kb quando instalada.

Download:

Testado no Excel para Windows, versões 2000, 2002(XP), 2003, 2007, 2010 (32-bit), 2013 (32-bit) e 2016 (32-bit) em instalações MSI-based e Click-To-Run do Office 365™ de serviços baseados na nuvem.

Download

Baixe a versão portuguesa agora

Você pode baixar também deste site-espelho

Última atualização: 20/11/2019 - 677,9kb

Grátis baseado neste Contrato de Licença

Obs.: O link acima baixa o pacote instalador e desinstalador programado em VBA em um XLS devidamente convertido para EXE pelo XLtoEXE para tornar a instalação mais fácil para leigos em macros e Windows, no entanto, se você é experiente e por alguma razão preferir um pacote instalador e desinstalador em formato ZIP aberto, clique aqui. Com este pacote zip você pode instalar de três maneiras: (1) Simplesmente acionar o Install.exe que carrega o mesmo XLS no Excel sem alerta de macro; (2) Extrair o pacote inteiro para uma pasta e acionar o XLS, habilitando as macros no Excel e usando 123 como senha, ou (3) Instalar a DLL manualmente.

Figuras:

Figura

Função fPortblXLSPrinter():

O Impressor de XLS Portável pode ser chamado diretamente a partir de qualquer código VBA através da função fPortblXLSPrinter() que tem estes sete argumentos opcionais:

1 - ToPrintWorkbookName¹ as String (Opcional. Padrão nome da Pasta ativa). O nome de uma Pasta de Trabalho já aberta no Excel.

2 - ToPrintSheetName as String (Opcional. Padrão nome da planilha ativa). O nome de uma planilha na Pasta ToPrintWorkbookName a imprimir para o arquivo XLS Portável.

3 - ToPrintSheetPasswrd as String (Opcional. Padrão=""). Senha de planilha se a planilha ToPrintSheetName for protegida.

4 - PortblSavePath as String (Opcional. Padrão o mesmo caminho de ToPrintWorkbookName). O caminho no disco onde o arquivo XLS Portável está ou será salvo.

5 - PortblSaveName as String (Opcional. Padrão um nome automático baseado no nome de ToPrintWorkbookName). O nome para o arquivo XLS Portável.

6 - PortblSheetPasswrd as String (Opcional. Padrão senha criada aleatoriamente). A senha se a planilha no XLS Portável necessitar ser protegida contra alterações. Se “” for passado, ela não será protegida.

7 - ZipPortbl As Boolean (Opcional. Padrão=Falso). Se Verdadeiro, o arquivo XLS Portável criado ou atualizado será imediatamente comprimido para um arquivo zip.

8 - AfterDoneEmail¹ as String (Opcional. Padrão "0"). Um comando definindo a ação a ser realizada depois que o arquivo XLS Portável estiver pronto e salvo. Deve ser uma destas quatro opções:

     "0" - Para emitir alerta de sucesso.

     "1" - Para não emitir alerta de sucesso (Fazer e salvar em silêncio).

     "Um endereço de e-mail" - Para enviar o arquivo XLS Portável anexado a um e-mail para o endereço informado (Pode ser mais de um endereço separados por ";").

     "SaveAs" - Para exibir a caixa de diálogo Salvar Como padrão do Excel possibilitando salvar o arquivo XLS Portável em outros formatos suportados pelo Excel como html, txt, pdf etc.

9 - EmailSubj as String (Opcional). O assunto do e-mail a enviar tendo o arquivo XLS Portável como anexo.

10 - EmailMsg as String (Opcional). A mensagem do e-mail a enviar tendo o arquivo XLS Portável como anexo.

¹Se forem informados apenas o argumento ToPrintWorkbookName e o argumento AfterDoneEmail passando e-mail, o arquivo informado em ToPrintWorkbookName será enviado imediatamente tal como está. Isto possibilita que alterações possam ser feitas em um XLS portável já feito antes de enviá-lo como anexo para o e-mail informado. Ou seja, fPortblXLSPrinter() pode ser chamada duas vezes em um processo de três etapas. Na primeira etapa, é chamada para imprimir para um complexo XL em um XLS portável. Na segunda etapa, são feitas alterações no XLS portável gerado tais como formatação, inclusão de textos e fórmulas, pois ele continua sendo uma planilha, uma grande vantagem em relação a imprimir para PDF. E finalmente, na terceira etapa, é chamada novamente para enviá-lo por e-mail com as alterações feitas.

Exemplos:

1 - O código abaixo chama a função fPortblXLSPrinter() para imprimir a planilha ativa para o arquivo SeuPortavel.xlsx na pasta C:\SeuTeste.

Sub SeuSub()
    Dim ObjToVBA As Object, fRet as Long
    Set ObjToVBA = Application.COMAddIns("AddInPortblXLSPrinter.ExcelDesigner").Object
    fRet = ObjToVBA.fPortblXLSPrinter(, , , "C:\SeuTeste", "SeuPortavel.xlsx")
End Sub

2 - O código abaixo chama a função fPortblXLSPrinter() tal como o utilitário é chamado a partir do comando de menu.

Sub SeuSub2()
    Dim ObjToVBA As Object, fRet as Long
    Set ObjToVBA = Application.COMAddIns("AddInPortblXLSPrinter.ExcelDesigner").Object
    fRet = ObjToVBA.fPortblXLSPrinter
End Sub

A função fPortblXLSPrinter() pode dar os seguintes retornos:

fRet = -1 (Cancelado pelo usuário);
fRet = 0 (Executado com sucesso);
fRet = 1 (Falha: Ao tentar desproteger a planilha com a senha informada em versões do Excel anteriores à versão 2007);
fRet = 2 (Falha: Ao tentar desproteger a planilha com a senha informada em qualquer versão do Excel);
fRet = 3 (Falha: Ao tentar enviar e-mail);
fRet = 101 (Falha: Pasta de trabalho informada pelo argumento ToPrintWorkbookName ou nenhuma pasta de trabalho ativa encontrada contendo a planilha para imprimir);
fRet = 102 (Falha: Planilha informada pelo argumento ToPrintSheetName ou nenhuma planilha ativa encontrada para imprimir);
fRet = 103 (Falha: Não foi informado a senha pelo argumento ToPrintSheetPasswrd e a planilha para imprimir está protegida);
fRet = 104 (Falha: Pasta no disco informada pelo argumento PortblSavePath não encontrada);
fRet = 105 (Falha: O nome de arquivo informado pelo argumento PortblSaveName não é válido, talvez a extensão);
fRet = 106 (Falha: Opção informada pelo argumento AfterDoneEmail inválida, talvez endereço de email informado inválido);
fRet = 107 (Falha no código VBA sem definição, mas com alerta).

Função fGetVersion() em VBA:

Esta função possibilita obter o número da versão instalada a partir de qualquer código VBA, retornando um número no formato 0.0.0.

Exemplos:

1 - O código abaixo chama a função fGetVersion() para verificar se a versão instalada está atualizada.

Sub SeuSub()
    On Error Resume Next
    Dim ObjToVBA As Object, vCallVerOld As Variant
    Set ObjToVBA = Application.COMAddIns("AddInPortblXLSPrinter.ExcelDesigner").Object
    vCallVerOld = ObjToVBA.fGetVersion
    If Err.Number <> 0 Then
        MsgBox "O 'Impressor de XLS Portável para Excel' não foi encontrado!"
    Else
        vCallVerOld = Split(vCallVerOld, ".")
        vCallVerOld = vCallVerOld(0) * 10 ^ 6 + vCallVerOld(1) * 10 ^ 3 + vCallVerOld(2)
        If vCallVerOld < 1002001 Then MsgBox "O 'Impressor de XLS Portável para Excel' encontrado é antigo!"
    End If
End Sub

Sobre Add-in (.xla):

Indisponível temporariamente.

 

Mais informação

Home

 

Facebook



gplus

 

 

Visitas acumuladas em todas as páginas:
Visitas hoje só nesta página: