Views

...

Important:

Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance.

E-mails

Deixe seu e-mail para receber atualizações...

eBook Promo

Microsoft Office Excel - 10 percepções de utilização

header-hands.jpg

Disponibilizei 10 percepções de utilização de como o Microsoft Office Excel pode ajudar-nos a criar as nossas planilhas, bem como analisá-las, compartilhá-las, gerenciá-las e distribuí-las de forma mais eficaz. 

Microsoft Office Excel é uma ferramenta poderosa e amplamente usada que ajuda as pessoas a analisarem suas informações e tomarem decisões coerentes, e na medida do possível embasadas em lógica simples.

Usando o 

Microsoft Office Excel
 e os seus serviços, podemos compartilhar e gerenciar nossas análises e idéias com colegas de trabalho, clientes e parceiros com maior confiança.


1
O Microsoft Office Excel tem a interface de usuário Office Fluent para ajudá-lo a encontrar ferramentas poderosas quando precisar delas.

Com base no trabalho que precisa realizar, quer seja a criação de uma tabela ou escrever uma fórmula, o  Microsoft Office Excel apresenta os comandos adequados para você quando necessários.

2
Importe, organize e explore conjuntos de dados maciços dentro de planilhas significativamente expandidas.

Trabalhe com grandes quantidades de dados no  Microsoft Office Excel, que oferece suporte a planilhas que podem ser maiores do que 1 milhão de linhas por 16.000 colunas. 

Além da grade maior, o  Microsoft Office Excel oferece suporte a plataformas de processadores de vários núcleos para o cálculo mais rápido das planilhas com suas várias fórmulas.

3
Use o mecanismo de gráficos completamente redesenhado do  Microsoft Office Excel para comunicar a sua análise em gráficos de aparência profissional.

Crie gráficos de aparência profissional mais rápido e com menos cliques usando ferramentas gráficas na interface de usuário Office Fluent. Aplique melhorias visuais ricas aos seus gráficos, como sombreamento leve e transparência. Crie e interaja com gráficos da mesma maneira, independentemente do aplicativo que está usando, pois o mecanismo de gráficos do  Microsoft Office Excel é consistente em todo o Microsoft Office e no Microsoft Office PowerPoint.

4
Desfrute o suporte poderoso e melhorado de trabalhar com tabelas.

Crie, formate, expanda, filtre e consulte tabelas dentro de fórmulas, pois o  Microsoft Office Excel melhorou muito o suporte para tabelas. Ao revisar dados contidos em uma tabela grande, o Microsoft Office Excel  mantém os títulos das tabelas na exibição, enquanto você os rola.

5
Crie e trabalhe com modos de exibição de tabela dinâmica interativos, com facilidade.

Os modos de exibição de tabela dinâmica permitem que você redirecione rapidamente os seus dados para ajudá-lo a responder várias perguntas. Encontre as respostas de que precisa mais rapidamente, crie e use os modos de tabela dinâmica mais facilmente, arrastando campos onde você quer exibi-los.

6
"Consulte" tendências importantes e encontre exceções nos dados.

Aplique formatação condicional às suas informações mais facilmente para descobrir padrões e realçar tendências em seus dados. Os novos esquemas incluem gradientes de cor, mapas de calor, barras de dados e ícones de indicador de desempenho.

7
Use o  Microsoft Office Excel  e os seus serviços para ajudar a compartilhar planilhas com os outros de maneira mais segura.

Os Serviços do  Microsoft Office Excel, um recurso do Microsoft Office SharePoint Server, processam dinamicamente uma planilha como HTML para que outros possam acessar as informações usando um navegador da Web. 

Devido ao alto grau de fidelidade com o cliente do  Microsoft Office Excel , os usuários dos Serviços do Excel podem navegar, classificar, filtrar, inserir parâmetros e interagir com as informações, tudo dentro do navegador da Web.

8
Ajude a garantir que você e sua organização trabalhem com as informações comerciais mais atuais.

Evite que a disseminação de várias cópias ou de cópias desatualizadas de uma planilha pela organização usando o  Microsoft Office Excel  e o Office SharePoint Server. Controle quais usuários podem exibir e modificar planilhas no servidor usando acesso baseado em permissão.

9
Reduza o tamanho das planilhas e melhore a recuperação do arquivo danificado ao mesmo tempo.

O novo formato compactado XML do Microsoft Office Excel oferece uma redução drástica em tamanho de arquivo, enquanto sua arquitetura oferece melhoria na recuperação de dados de arquivos danificados. Esse novo formato oferece uma enorme economia de requisitos de armazenamento e de largura de banda, além de reduzir a carga no pessoal de TI.

10
Amplie seus investimentos em inteligência comercial, pois o  Microsoft Office Excel oferece suporte completo para o Microsoft SQL Server Analysis Services.

Tire vantagem da flexibilidade e das novas funções de cubo do  Microsoft Office Excel  para criar um relatório personalizado a partir de um banco de dados OLAP

Você também pode conectar-se a fontes externas de dados mais facilmente usando a Biblioteca de Conexões de Dados.



TagsMicrosoft Office Excel, Excel, Office Fluent, 10 percepções de utilização, Microsoft Office SharePoint Server, Microsoft SQL Server Analysis Services, OLAP


André Luiz Bernardes

A&A® - Work smart, not hard.


VBA Excel - Como deixar suas planilhas enxutas

header-training.jpg

Confesso que manter o tamanho das planilhas sejam um tema recorrente e difícil de divulgar. Certamente causa interesse, mas o ponto principal é: Como deixá-las menores?

Ja abordei este assunto diversas vezes, sobre óticas distintas: Explicando o motivo destas ficarem assim, mostrando ações efetivas de torná-las menores, demonstrei técnicas com o VBA e tudo o mais.

Nos idos de 2009, escrevi coisas similares as demonstradas abaixo:

Possivelmente já percebeu como suas planilhas inflam sem qualquer aparente explicação, como se tivesse comido vários quilos de açúcar. De uma hora prá outra o que tinha apenas uns parcos 530 KB de peso, passa a ter e exibir exuberantes 2.350 KB. O que aconteceu? Será que nossas planilhas atacam a geladeira durante a madrugada?

Com o passar do tempo, sem que necessariamente tenhamos acrescentado algum conteúdo relevante, nossas planilhas persistem em aumentar.

Linhas inofensivas
:
É muito comum que somente abramos o nosso arquivo, efetuando pequenas alterações em certas células, além de vez ou outra inserirmos algumas linhas em branco, apenas para posicionarmos algumas informações. O que talvez não percebamos é que estas inofensivas linhas em branco não somem, antes são salvas, ocupando espaço desnecessário. Lógico que isso é muito comum devido a grande manipulação de dados que efetuamos diariamente. Nunca paramos prá pensar em tamanho no nosso dia-a-dia. Somente quando não temos espaço, ou quando o administrador da rede diz-nos que nosso espaço no Public está lotado é que pensamos no motivo de tão poucas planilhas ocuparem tanto espaço.

Mandando suas planilhas para o SPA
:
O MS Excel não consegue distinguir as linhas que estão em branco (pelo menos não o fazia corretamente na versão de 2009) ou vazias e acaba por gravar todas as ocorrências em branco como conteúdo das nossas planilhas. Além disso, caso formatemos uma coluna inteira até a linha 1 milhão (mesmo que sem querer), ao fechar a planilhas teremos gravado aquela coluna em um milhão de linhas, apenas porque esquecemos da formatação ali.

O tamanho das planilhas é uma preocupação constante nas nossas aplicações. A não ser que realmente precisemos ter ocorrências extensas, deveríamos automatizar a deleção das linhas excedentes.

Como faremos isso?

Técnicas de exclusão de linhas podem ser colocadas ao fecharmos e/ou gravarmos nossas planilhas...Isso as fariam efetuar atividades 'aeróbicas' constantemente, queimando suas calorias extras...

Deletar linhas e efetuar as tais tarefas aeróbicas podem tornar o fechamento das planilhas muito lento dependendo do tamanho.


Confesso que nesta época era persistente, por isso não parei por aí:
Quando nossas planilhas recebem dados de outras bases (fontes), seja através de ODBC, Macros ou mesmo informações da Internet, não raro aparecem melhares de linhas em branco. Caso ache útil deletá-las poderá implementar a solução abaixo.

Function EliminateThousandBlankLines(StarLine as Long)
' Author: André Luiz Bernardes.
'    Date: 05.02.2009

    Let nRow = StartLine

    Do While ActiveSheet.Cells(nRow, 1) <> ""
        If ActiveSheet.Cells(nRow, 1).Value <> strUserName Then
            ActiveSheet.Rows(nRow).EntireRow.Delete
        Else
            Let nRow = nRow + 1
        End If
    Loop
End Function

Nesta missão de suma importância, onde a deleção de linhas e colunas desnecessárias mostram-se tão preementes, deixo-vos códigos utilíssimos:
Function LastRow (nColumn As String, InitLine As Single) As Single
    ' Author:                     Date:               Contact:
    ' André Bernardes             16/09/2008 14:20    bernardess@gmail.com
    ' Retorna o número de ocorrências.

    Dim nLine As Single
    Dim nStart As Single
    Dim nFinito As Single
    Dim Cabessalho As Single
    Dim nCeo As String

    Application.Volatile

    Let nStart = InitLine + 1
    Let nFinito = 65000
    Let Cabessalho = InitLine

    Do While nStart < nFinito
        Let nCeo = nColumn & Trim(Str(nStart))

        If Application.ActiveSheet.Range(nCeo).Value = "" Then
            Exit Do
        End If

        'Let Application.StatusBar.Value = " Linha: " & nStart
        Let nStart = nStart + 1
    Loop

    Let LastRow = (nStart - 1) '- Cabeçalho
    'Let Application.StatusBar.Value = "  "
End Function

Function FindLastColumn() As Single
    Let FindLastColumn = Range("IV10").End(xlToLeft).Column
    
    'ActiveSheet.UsedRange.Columns.Count

    'Dim LastCol As Integer
    
    'Let LastCol = ActiveSheet.Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByColumns).Column
    'Let FindLastColumn = LastCol
End Function

Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)

NomePlanilha = ActiveSheet.Name
NomePasta = ActiveWorkbook.Name

Endereco = ActiveWorkbook.Path

UsuarioExcel = Application.UserName
UsuarioEstacao = Environ("USERNAME")

UltimaLinhaNumero = ActiveCell.SpecialCells(xlCellTypeLastCell).Row

UltimaColunaNumero = ActiveCell.SpecialCells(xlCellTypeLastCell).Column

UltimaCelulaRange = ActiveCell.SpecialCells(xlCellTypeLastCell).Address & " ou " & ActiveCell.SpecialCells(xlCellTypeLastCell).Address(RowAbsolute:=False) & " ou " & ActiveCell.SpecialCells(xlCellTypeLastCell).Address(ReferenceStyle:=xlR1C1)

CelulaAtualLinhaNumero = ActiveCell.Row
CelulaAtualColunaNumero = ActiveCell.Column
CelulaAtualRange = ActiveCell.Address & " ou " & ActiveCell.Address(RowAbsolute:=False) & " ou " & ActiveCell.Address(ReferenceStyle:=xlR1C1)

CelulaAtualRelativo = ActiveCell.Address(ReferenceStyle:=xlR1C1, RowAbsolute:=False, ColumnAbsolute:=False, RelativeTo:=Worksheets(NomePlanilha).Cells(1, 1))


MsgBox "Planilha Atual" & vbCrLf & vbCrLf & _
       vbTab & "Nome" & vbTab & vbTab & ": " & NomePlanilha & vbCrLf & _
       vbTab & "Última Linha" & vbTab & ": " & UltimaLinhaNumero & vbCrLf & _
       vbTab & "Última Coluna" & vbTab & ": " & UltimaColunaNumero & vbCrLf & _
       vbTab & "Última Célula" & vbTab & ": " & UltimaCelulaRange & vbCrLf & vbCrLf & vbCrLf & _
       "Célula Atual" & vbCrLf & vbCrLf & _
       vbTab & "Número da Linha" & vbTab & ": " & CelulaAtualLinhaNumero & vbCrLf & _
       vbTab & "Número da Coluna" & vbTab & ": " & CelulaAtualColunaNumero & vbCrLf & _
       vbTab & "Range" & vbTab & vbTab & ": " & CelulaAtualRange & vbCrLf & _
       vbTab & "Relativo a A1" & vbTab & ": " & CelulaAtualRelativo & vbCrLf & vbCrLf & vbCrLf & _
       "Outras Informações" & vbCrLf & vbCrLf & _
       "Nome da Pasta de Trabalho" & vbTab & vbTab & ": " & NomePasta & vbCrLf & _
       "Caminho da Pasta de Trabalho" & vbTab & ": " & Endereco & vbCrLf & _
       "Usuario (Excel)" & vbTab & vbTab & vbTab & ": " & UsuarioExcel & vbCrLf & _
       "Usuario (Estação)" & vbTab & vbTab & vbTab & ": " & UsuarioEstacao, vbInformation, "Informações"

End Sub

Referência: Canguru

Tags: Excel, delete, rows, lines, excel size, cell, cell info, worksheet, small workbook, 


André Luiz Bernardes

A&A® - Work smart, not hard.


SOLUÇÕES VBA

Desenvolvo aplicações com o VBA.

Utilizo a suíte do Microsoft Office para estender soluções aos clientes.

default.aspx?AssetID=ZA101076371046

Desenvolvo aplicações (ferramentas) com o MS Excel, MS Access, MS Powerpoint, MS Word, MS Outlook, MS Sharepoint

Procure melhorar os resultados que vem alcançando na sua empresa hoje. Através da automação realizo todas as tarefas que demandariam muito tempo dos usuários.

Já desenvolvi diversas aplicações em planilhas. Aplicações com o MS Access, Exportação automática de gráficos e tabelas do MS Excel para o MS PowerPoint , Envio automático de relatórios através do MS Outlook. Além disso implementei diversos Dashboards com os seus respectivos KPIs (indicadores de desempenho).

80543.jpg

Trabalhe melhor os dados oriundos do seu ERP (SAP, Microsiga, Datasul, ORACLE, BAAN, PEOPLESOFT, etc).

Crie relatórios personalizados, implemento um visual (layout) profissional aos indicadores de sua empresa.

Consulte as condições de pagamento e prazos para desenvolvimento.

Instruções para o comprador

1. Todas as minhas atuações são freelance.

2. O preço e prazos passados variam de acordo com a urgência e complexidade do serviço. Para maiores informações, solicite um orçamento.

3. Ao solicitar um orçamento, envie documento contendo as especificações detalhadas do que necessita ser realizado. Assim identifico melhor a sua necessidade.

Delivery Tempo de entrega em dias: A combinar

Tags: André Luiz Bernardes, TI, Tecnologia da Informação, KPI, KPIs, Key performance Indicator, PMBOK, escopo, stakeholder, Indicadores, DW, Data Warehousing, BSM, Business Scorecard Manager, BSC, Balanced Scorecard, Dashboard


André Luiz Bernardes

A&A® - Work smart, not hard.


VBA Excel - Manipulando Tabela Dinâmica - Refresh Pivot Table

Quando estamos efetuando nossas implementações em Dashboards e preocupados com a performance das suas atualizações, também passa por nossas cabeças a necessidade de que sejam dinâmicos. Para isso torna-se imprescindível saber atualizar as nossas Pivot Tables (Tabelas Dinâmicas) utilizando o VBA. Como fazê-lo?



Quando a planilha for aberta ela pode automaticamente evocar um código que atualize todas as PT (Pivot Table) da nossa planilha

Sub Worksheet_Activate()
    Run "PT_Refresh" 
End Sub


Atualizando uma PT simples:

Sub PT_Refresh()

    Dim pt As PivotTable

    Set pt = ActiveSheet.PivotTables("MyPivot")

    pt.RefreshTable

End Sub

Atualizando várias PTs:

Sub AllWorksheetPTs()

    Dim pt As PivotTable

    For Each pt In ActiveSheet.PivotTables

        pt.RefreshTable

    Next pt

End Sub

Atualiza todas as PTs selecionadas na worksheet:

Sub ChosenPTs()

    Dim pt As PivotTable

    For Each pt In ActiveSheet.PivotTables    

        Select Case pt.Name

            Case "PivotTable1", "PivotTable4", "PivotTable8"

                pt.RefreshTable

            Case Else

        End Select

    Next pt

End Sub


Atualizando PTs selecionadas previamente na planilha:

Sub AllWorkbookPTs()    
    Dim pt As PivotTable
    Dim ws As Worksheet

    For Each ws In ActiveWorkbook.Worksheets

        For Each pt In ws.PivotTables

            pt.RefreshTable
        Next pt

    Next ws
End Sub


bernardes_Ciclo_Dashboard_Pivot_Table_3.png

Talvez você deseja executar um procedimento após a atualização de um PT, como por exemplo enviar por e-mail, atualizar uma base de dados externa, etc...Como automatizar isso?

Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
     Call ClonaPivot
End Sub

Tags: VBA, PT, Pivot Table, Tabela Dinâmica, refresh, table, workbook, worksheet, automation

André Luiz Bernardes

A&A® - Work smart, not hard.


VBA Excel - Preenchendo lacunas vazias com dados.

Quem está constantemente desenvolvendo soluções através do MS Excel, regularmente depara-se com a seguinte situação:

Primeiro copia-se um determinado Range, recém atualizado, que reflete o resultado de um filtro específico de uma Pivot Table (Tabela Dinâmica).

Segundo, ao colar o Range recém copiados da PT (Pivot Table), percebe que algumas lacunas ficaram vazias, pois a PT em cada coluna, não repete uma série de dados, apenas demonstra a primeira ocorrência desta.



Como fazer para que todo o Range copiado fique com os dados completos, mesmo que repetidos, preparando-os para serem exportados para uma tabela do MS Access por exemplo?



Assim que o Range estiver selecionado, aplique-lhe a seguinte série de códigos:

' Prepara os dados para serem enviados a uma tabela no MS Access.
Selection.SpecialCells(xlCellTypeBlanks).Select

Let Application.CutCopyMode = False
Let Selection.FormulaR1C1 = "=R[-1]C"

Tags: Bernardes, VBA, Office, Excel, Range, select, copy, Pivot Table, PT, Tabela Dinâmica, fill, data, lacuna, preenchendo


André Luiz Bernardes

A&A® - Work smart, not hard.



eBooks VBA na AMAZOM.com.br

LinkWithinBrazilVBAExcelSpecialist

Related Posts Plugin for WordPress, Blogger...

Vitrine