Cabeçalho

quinta-feira, 30 de março de 2017

Instalar MediaSkin

Em continuação à postagem anterior, estou ensinando a instalar o Media@Skin no Media Nav.

          Através do Media@Skin é possível rodar o IGO o 7 Ways no Media Nav, onde pode ser atualizado periodicamente sem pagar os abusivos R$ 300 que a Renault cobra para atualizar. Na internet é possível adquirir mapas com preços acessíveis ou até mesmo gratuitos. Além de poder rodar vídeos diretamente no Media Nav.

para instalar o Media@Skin precisamos do Media Nav Evolution com a atualização 6.0.3 . Para instalar esta atualização consulte a postagem anterior, neste link. http://atualexcel.blogspot.com/2017/03/downgrade-media-nave.html

Abaixo disponibilizo os links para baixar o Media@Skin, que encontrei no fórum: http://www.loganclube.com.br/thread-2534-page-15.html


Sem mapas (+/- 186Mb):
http://www.4shared.com/zip/mNBG5Alsba/Me...MAPAS.html

Com mapas (+/- 1,2Gb)
http://www.4shared.com/rar/4QuXoMEhce/Me...part1.html
http://www.4shared.com/rar/q0rbuJYyce/Me...part2.html
http://www.4shared.com/rar/VT-qdqMKce/Me...part3.html
http://www.4shared.com/rar/QOMfSwZoba/Me...part4.html
http://www.4shared.com/rar/EB-IdJQuba/Me...part5.html
http://www.4shared.com/rar/CgzUMrD9ba/Me...part6.html

Após baixar verifique a integridade do arquivo com o HJsplit.
 http://www.4shared.com/zip/fy5YI559ba/hjsplit.html

- Basta extrair o arquivo upgrade_root.lgu para um pendrive formatado em FAT32,
- Plugar o pendrive no Media Nav desligado e, ligar a chave e o Media Nav.
- Aguarde o Media Nav iniciar, aparecerá uma janela solicitando confirmação para instalar a atualização, basta confirmar.
- Neste momento iniciará a instalação. Não desligue a chave antes da conclusão, deve demorar em torno de um 20 min.

Após a conclusão aparecerá uma bolinha amarela na tela, arraste e solte onde desejar.
Para acessar o Media@Skin clique na bolinha.

O Media@Skin é executado diretamente no pendrive, por isso para utilizar, ligue a central multimídia com o pendrive plugado.

Para reproduzir os sons do IGO, 7 Ways ou dos vídeos, inicie a reprodução de uma musica de qualquer pasta do pendrive e pause a mesma, caso deseje ouvir musicas durante a navegação não é necessário pausar.

O IGO gerado nesta instalação está com um erro nos arquivos de tradução (lang) que não exibe o teclado para digitar os números das casas quando for alterado o idioma para o português. Encontrei outro pacote de tradução e alterei no IGO. Além disso fiz outras modificações e estou disponibilizando para quem quiser baixar.

Abra a pasta MediaskinND e exclua a pasta Igo8 e insira esta que estou disponibilizando. Antes faça um backup da pasta.

https://www.dropbox.com/s/x74t4pjyrkdembe/Igo8.rar?dl=0


Faça por sua própria conta de risco, não me responsabilizo por instalação mal sucedida.



sexta-feira, 17 de março de 2017

Downgrade Media Nave

          Hoje fugindo um pouco do foco do blog, estou postando minha indignação referente ao desrespeito da Renault com o consumidor.
         Em 2016 comprei um Sandero com o Media Nav, onde o critério de escolha foi por ter GPS integrado. No teste drive o GPS do carro estava desativado, mas o vendedor me garantiu que o GPS funciona corretamente, está atualizado e que eu poderia atualizar gratuitamente pelo site quando desejasse.
         Aproximadamente um mês após a compra chegou o carro e realmente o GPS estava funcionando, porem as rotas sugeridas não eram as melhores. Um tempo depois verifiquei que a atualização instalada era de 2013.
        Fui no site para atualizar e é possível atualizar gratuitamente somente o Media Nav, o GPS custa mais 300 reais para atualizar. A concessionaria onde comprei o carro fechou, então fui em outra e, me informaram que não poderiam fazer nada.
        Meu questionamento não é por cobrar a atualização e sim por vender algo desatualizado obrigando o usuário a atualizar para poder usar e pagando por isso.

        Procurei na internet e encontrei uma forma de rodar o Media@skin, nele é possível rodar os navegadores IGO 8 e o 7 Ways, os quais é possível encontrar mapas atualizados com facilidade na internet. Instalei e utilizei por um bom tempo sem problemas.
        Quando fui fazer a revisão instalara a atualização 7.0.5 do Media Nav, no qual não roda o Media@skin. Recorri a internet e encontrei a atualização 6.0.3 e fiz um downgrade para a mesma e estou utilizando novamento o Media@skin.       

        Estou postando este tutorial ensinando a fazer o downgrade de uma versão superior à 6.0.3.

        Basta baixar o arquivo abaixo e extrair para a raiz de um pendrive, recomenda-se pelo menos 4G disponíveis.
        Com o Media Nav desligado, insira o pendrive e ligue a chave, aguarde o sistema iniciar. Logo aparecerá uma janela informado que há um arquivo de atualização, informando a atualização atual e a que será instalada. Basta confirmar a atualização.
        Não desligue a chave antes de concluir a instalação.
        Após concluir a instalação apegue o arquivo do pendrive para que não seja solicitado toda a vez que ligar o Media Nave com o pendrive inserido.
    

Faça por sua própria conta de risco.
Não me responsabilizo por atualização mal sucedida.


       Segue o link para download da versão 6.0.6 do Media Nav. Esta é a ver são compatível com o Media@skin.
       Na próxima postagem disponibilizarei o Media@skin e as instruções de instalação. deixarei o link aqui.


Media Nav 6.0.3




        

domingo, 26 de fevereiro de 2017

Executar macro quando uma célula for alterada

Esta macro é executada sempre que houver alteração na planilha. Após a alteração a macro checa se é a célula definida que foi modificada, então executa os comandos definidos.


Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("B1")) Is Nothing Then ' Comandos End If End Sub


domingo, 29 de janeiro de 2017

Descobrir o nome de todas as planilhas

Para descobrir o nome de todas as planilhas de uma pasta de trabalho basta utilizar a macro abaixo. Com ela é possível obter o nome, o código e o índice e adicionar na planilha.

Sub Nomes_planilhas()
For i = 1 To Sheets.Count
    Plan1.Cells(i + 1, 1) = Sheets(i).CodeName
    Plan1.Cells(i + 1, 2) = Sheets(i).Name
    Plan1.Cells(i + 1, 3) = i
Next
          
End Sub


Para fazer referencia às planilhas basta utilizar a macro abaixo. Pode ser utilizado somente uma das opções, todas fazem a mesma coisa.

Sub ativar_planilhas()
    Plan2.Activate
    Sheets("jan").Activate
    Sheets(5).Activate

End Sub



quarta-feira, 26 de outubro de 2016

Selecionar células com fórmulas

Selecionar células com fórmulas

Esta macro seleciona todas as células com fórmulas

Sub Seleciona_todas_Celulas_Com_Formulas()
Selection.SpecialCells(xlCellTypeFormulas, 23).Select
'Selection.ClearContents
'Selection.Delete
End Sub

Identificar dados repetidos

Identificar dados repetidos
Esta macro Excel VBA abre um inputbox e solicita para selecionar um range onde serão avaliados os dados e destaca os repetidos de cor diferente dos valores únicos.

Sub Verifica_Duplicados()
Dim Collec As New Collection, Cell As Range, Plage As Range
 
  On Error Resume Next
  Set Plage = Application.InputBox("Range a examinar", Type:=8)
  If IsEmpty(Plage) Then Exit Sub
 
  For Each Cell In Plage
    If Cell.Value <> “” Then
      Collec.Add Cell.Value, CStr(Cell.Value)
      If Err <> 0 Then
        Err.Clear
        Cell.Interior.ColorIndex = 43
      Else
        Cell.Interior.ColorIndex = 6
      End If
    End If
  Next Cell
End Sub

Selecionar a próxima célula vazia

Selecionar a próxima célula vazia

Ésta macro seleciona a próxima célula em branco à Direita. Para selecionar células à esquerda, acima ou abaixo basta alterar os parâmetros Offset.

Sub Selecina_Proxima_celula_Vazia_Direita()
    ActiveCell.Offset(0, 1).Select
    Do While Not IsEmpty(ActiveCell)
        ActiveCell.Offset(0, 1).Select
    Loop
End Sub

segunda-feira, 17 de outubro de 2016

Macros Prontas

Abaixo estou disponibilizando algumas macros simples do Excel VBA mas que podem ser muito útil no dia a dia.


Identificar o usuário logado

Esta macro identifica o usuário logado, o domínio da rede e o nome do computador. Armazena todos em uma variável e exibe em uma caixa de texto.
Esta macro é útil quando precisamos bloquear acesso à alguma planilha, limitar algumas ações e etc.

Sub Usuário_logado()

    Usuário = Environ("username")           'Recebe o nome do usuário que está logado
    Dominio = Environ("userdomain")         'Recebe o domínio da rede
    Computador = Environ("computername")    'Recebe o nome do computador
   
    MsgBox ("Usuário: " & Usuário)
    MsgBox ("Dominio: " & Dominio)
    MsgBox ("Computador: " & Computador)

End Sub


Ocultar Barras no Excel VBA

Esta macro oculta e reexibe os objetos window do Excel.


Sub Ocltar()
    Application.DisplayFullScreen = True 'Exibe em Modo de Leitura (tela cheia)
    ActiveWindow.DisplayHeadings = False 'Oculta o Cabeçalho (Letras das colunas)
    Application.DisplayFormulaBar = False 'Oculta a barra de Formulas
    ActiveWindow.DisplayHorizontalScrollBar = False 'Oculta a barra de rolagem Horizontal
    ActiveWindow.DisplayVerticalScrollBar = False 'Oculta a barra de rilagem Vertival
    ActiveWindow.DisplayWorkbookTabs = False 'Oculta as Tabs para mudar de Folha
    Application.DisplayStatusBar = False 'Oculta a barra do Status
    Application.DisplayAlerts = False 'Desabilita a exibição de avisos do sistema

End Sub

Sub Reexibir()
    Application.DisplayFullScreen = False 'Sai do Modo de Leitura
    ActiveWindow.DisplayHeadings = True 'Mostra o Cabeçalho
    Application.DisplayFormulaBar = True 'Mostra a barra de Formulas
    ActiveWindow.DisplayHorizontalScrollBar = True 'Mostra a barra de rolagem Horizontal
    ActiveWindow.DisplayVerticalScrollBar = True 'Mostra a barra de rolagem Vertival
    ActiveWindow.DisplayWorkbookTabs = True 'Mostra as Tabs para mudar de Folha
    Application.DisplayStatusBar = True 'Mostra a barra do Status
    Application.DisplayAlerts = True 'Habilita a exibição de avisos do sistema

End Sub







sexta-feira, 14 de outubro de 2016

Excel - Desbloquear Projeto VBA

Nesta postagem explicarei como desbloquear aquele projeto VBA que foi protegido e precisamos editar, porém não lembramos a senha. Com esta ferramenta é possível remover a senha e deixa-lo livre para a edição. Esta ferramenta não descobre a senha, apenas remove a mesma.

Primeiramente precisamos baixar 2 programas, que são disponibilizados gratuitamente na internet, abaixo disponibilizo os links para baixar. Um compactador de arquivos e um editor binário, o 7-Zip e o Hexedit respectivamente.

Faremos uma copia do arquivo e trabalharemos com ela, que se algo der errado não perdemos o arquivo.

Instalamos os dois programas.

Com os programas instalados, clicamos com o botão direito do mouse sobre o arquivo que queremos desbloquear, o mesmo deve estar fechado, selecionamos o menu abrir com e escolhemos o 7-Zip. Caso o 7-Zip não esteja na lista de programas sugeridos, clicamos em procurar e na pasta e na pasta 7-Zip selecionamos o 7zFM.

Dentro do 7-Zip abrimos a pasta xl, e procuramos pelo arquivo VbaProject.bin. Clicamos nele e arrastamos para fora do 7-Zip, para a área de trabalho ou qualquer outra pasta.

Clicamos com o botão direito do mouse sobre ele e abrir com (open with Hxedit) e pressionamos as teclas CTRL+F para localizar. Localizamos pelo texto DPB e substituímos por DPX. Fechar e salvar.

Arrastamos o Arquivo VbaPproject.bin de volta para o -Zip, no mesmo local em que ele estava e confirmamos a substituição. Fechar o 7-Zip.

Abrimos o arquivo do Excel normalmente (com o Excel). Se acusar algum erro, basta pressionar Esc até o erro sair.

Pressionar Alt+F11 para acessar o Projeto VBA. Clicamos em Ferramentas e depois em Propriedades do VBAProject e na guia proteção, desmarcamos a opção bloquear projeto para exibição e confirmamos. Basta salvar e o projeto estará desbloqueado.



Veja a vídeo Aula


Links para baixar.

https://drive.google.com/file/d/0BySfeM8SDYpTTm84Q0NDcjdmMjA/view?usp=sharing

















domingo, 29 de março de 2015

Barra de menus personalizada excel VBA

Olá, esta postagem exemplifica a criação de uma barra de menus personalizada no excel com VBA.
Exemplificarei três formas diferentes de barras de menus.




Exemplo 01.

Neste Exemplo construí um menu do tipo ComboBox, que pelo qual, é possível navegar entre as abas da planilha ou selecionar item de uma lista disponível no excel. Segue a macro pronta.


Sub Exemplo1()
On Error Resume Next
CommandBars("Barra_Planilhas").Delete    'Deleta a barra
'Cria a barra e defiene os nomes
Set MinhaBarra1 = CommandBars.Add
MinhaBarra1.Name = "Barra_Planilhas"
MinhaBarra1.Visible = True
Set menu = MinhaBarra1.Controls.Add(msoControlComboBox) 'Defiene o tipo de menu
For i = 1 To Sheets.Count    ' Faz a contagem das planilhas e adiciona ao ComboBox
    menu.AddItem Sheets(i).Name
Next
menu.OnAction = "Navega_Plan"   'Macro que ira executar ao clicar em uma opção
menu.Text = "Seleciona Planilha"  'Texto a exibir no combobox
Set menu2 = MinhaBarra1.Controls.Add(msoControlComboBox)
Dim x As String
i = Range(Cells(1, 1), Cells(10, 1))
For i = 1 To (Cells(Rows.Count, 1).End(xlUp).Row)
x = Plan2.Cells(i, 1)
menu2.AddItem (x)
Next
menu2.OnAction = "Navega_Plan1"
menu2.Text = "Menu 2"

End Sub
Sub Navega_Plan()
Sheets(CommandBars("Barra_Planilhas").Controls(1).Text).Select
End Sub
Sub Navega_Plan1()
Dim y As String
y = (CommandBars("Barra_Planilhas").Controls(2).Text)   'Transfere o item do menu2 selecionado para avariavel Y.
MsgBox (y)
End Sub
Sub RemoveBarra()
On Error Resume Next
    CommandBars("Barra_Planilhas").Delete
End Sub



Exemplo 02.

Este exemplo cria uma barra de menus com botões de comando (ControlButton)

Public Const MinhaBarra As String = "MinhaBarra"
Public Sub Exemplo2()
Dim Vbarra As CommandBar
Dim VBotoes As CommandBarButton
Dim menu As CommandBarPopup
    On Error Resume Next
    'Exclui a barra
    Application.CommandBars(MinhaBarra).Delete
   
    'Adiciona a barra de ferramentas com o nome de VBarra
    Set Vbarra = CommandBars.Add(MinhaBarra, msoBarFloating)
       
    With Vbarra
        .Visible = True
    End With
   
    'Adiciona botões à barra de ferramentas
    Set VBotoes = Vbarra.Controls.Add(Type:=msoControlButton)
        With VBotoes
            .BeginGroup = True
            .Caption = "Botão 1"            'Define o título do botão
            .Style = msoButtonCaption       'Estilo do botão (texto, icone, ambos ...)
            .OnAction = "macro1"            'Macro que executada ao clicar
            .Visible = True                 'Exibe ou oculta a barra
            .Width = 390                    'Define o tamanho do botão
            .TooltipText = "Este é o botão 1"  'Define o texto de informação do botão
        End With
       
    Set VBotoes = Vbarra.Controls.Add(Type:=msoControlButton)
        With VBotoes
            .Caption = "&Botão 2"
            .Style = msoButtonIconAndCaption
            .FaceId = 444
            .OnAction = "macro2"
            .Visible = True
            .Width = 200
        End With
       
        Set VBotoes = Vbarra.Controls.Add(Type:=msoControlButton)
        With VBotoes
            .Caption = "Botão 3"
            .Style = msoIcon
            .FaceId = 17
            .OnAction = "macro3"
            .Visible = True
            .Width = 50
        End With
       
        'Adiciona menus com figuras personalizadas
        Set VBotoes = Vbarra.Controls.Add(Type:=msoControlButton)
        With VBotoes
        .Caption = "&Botão 4"
        .Style = msoButtonIconAndCaption
        .OnAction = "macro4"
         Plan2.Shapes("imagem1").Copy
        .PasteFace
        .TooltipText = "Este é o botão 4"
    End With
       
        Set VBotoes = Vbarra.Controls.Add(Type:=msoControlButton)
        With VBotoes
        .Caption = "&Botão 5"
        .Style = msoButtonIconAndCaption
        .OnAction = "macro5"
         Plan2.Shapes("imagem2").Copy
        .PasteFace
    End With
End Sub
Public Sub DeletarBarra()
On Error Resume Next
    Application.CommandBars(MinhaBarra).Delete
End Sub
Sub macro1()
    MsgBox ("Você clicou no botão 1")
End Sub
Sub macro2()
    MsgBox ("Você clicou no botão 2")
End Sub
Sub macro3()
    MsgBox ("Você clicou no botão 3")
End Sub
Sub macro4()
    MsgBox ("Você clicou no botão 4")
End Sub
Sub macro5()
    MsgBox ("Você clicou no botão 5")
End Sub


Exemplo 03

Este exemplo cria um menu do tipo ControlPopup com sub menus.


Option Explicit
Sub Exemplo3()
Dim MeuMenu, MeuSubMenu As CommandBarControl
On Error Resume Next
    CommandBars.FindControl(Tag:="MeusMenus").Delete
      
    ' cria um novo menu
    Set MeuMenu = Application.CommandBars(1).Controls.Add(msoControlPopup, , , , True)
    With MeuMenu
        .Caption = "&Meu Menu"
        .Tag = "MeusMenus"
        .BeginGroup = True
        .Visible = True
    End With
   
    If MeuMenu Is Nothing Then Exit Sub

    With MeuMenu.Controls.Add(msoControlButton, 1, , , True)
        .FaceId = 71
        .Caption = "&Menu Item1"
        .OnAction = "primeiramacro"
    End With

   
    With MeuMenu.Controls.Add(msoControlButton, 1, , , True)
        .Caption = "M&enu Item2"
        .OnAction = "segundamacro"
    End With
    With MeuMenu.Controls.Add(msoControlButton, 1, , , True)
        .FaceId = 59
        .Caption = "Menu Item 3"
        .OnAction = "terceiramacro"
    End With

    ' adiciona um menu
    Set MeuSubMenu = MeuMenu.Controls.Add(msoControlPopup, 1, , , True)
    With MeuSubMenu
        .Caption = "&Menu Item 4"
        .BeginGroup = False
    End With
    With MeuSubMenu.Controls.Add(Type:=msoControlPopup)
            .Caption = "&SubMenuItem"
           
            With .Controls.Add(Type:=msoControlPopup)
            .Caption = "SubItem 1"
                With .CommandBar.Controls.Add(Type:=msoControlButton)
                    .FaceId = 71
                    .Caption = "&Botão1"
                    .OnAction = "Copasmenor"
                End With
                     
                With .CommandBar.Controls.Add(Type:=msoControlButton)
                    .FaceId = 487
                    .Caption = "Botão 2"
                    .OnAction = "Botão2"
                End With
           
            End With
           
                     
            With .Controls.Add(Type:=msoControlPopup)
            .Caption = "&SubItem 2"
           
                With .CommandBar.Controls.Add(Type:=msoControlButton)
                    .FaceId = 59
                    .Caption = "Botão3"
                    .OnAction = "Copasmaior"
                End With
                With .CommandBar.Controls.Add(Type:=msoControlButton)
                    .FaceId = 74
                    .Caption = "Botão4"
                    .OnAction = "Ouromaior"
                End With
           
            End With
           
        End With

    ' Item romover do menu
    With MeuMenu.Controls.Add(msoControlButton, 1, , , True)
        .Caption = "&Remover este menu"
        .OnAction = ThisWorkbook.Name & "!RemoveMenu"
        .Style = msoButtonIconAndCaption
        .FaceId = 67
        .BeginGroup = True
    End With
    Set MeuSubMenu = Nothing
    Set MeuMenu = Nothing
End Sub
Sub RemoveMenu()
On Error Resume Next
    CommandBars.FindControl(Tag:="MeusMenus").Delete
End Sub
Sub primeiramacro()
MsgBox ("Você clicou no primeiro submenu")
End Sub
Sub segundamacro()
MsgBox ("Você clicou no segundo submenu")
End Sub
Sub terceiramacro()
MsgBox ("Você clicou no terceiro submenu")
End Sub
Sub botao1()
MsgBox ("Você clicou no botão 1")
End Sub


OBS:

Lembre-se de excluir os menus antes de fechar a planilha ou inserir uma rotina autoclose para isso. Caso você esquecer, estas barras ficarão visíveis em outras planilhas porem não funcionarão. Você ainda pode excluir clicando com o botão direito sobre o menu e escolher a opção excluir.
Segue a macro para remover automaticamente ao fechar a planilha.

Sub auto_close()
On Error Resume Next
    CommandBars("Barra_Planilhas").Delete
    CommandBars.FindControl(Tag:="MeusMenus").Delete
    Application.CommandBars(MinhaBarra).Delete
End Sub


BAIXE A PLANILHA EXEMPLO

VEJA A VÍDO AULA


domingo, 19 de outubro de 2014

Somar ou Contar valores entre datas excel


Na maioria das funções do Excel, para fazer uma comparação como por exemplo maior ou menor basta inserir os símbolos ">" ou "<". Porém para as funções CONT.SES e SOMASES não funciona.
Para que estas funções funcionem corretamente, devemos inserir os sinais de maior ou menor entre aspas e unir com a célula onde contem o critério.

Supondo tenhamos datas na coluna A e valores na B, e queremos somar os valores em um intervalo específico de datas.
Em C1 inserimos a data inicial e em C2 a data final. em qualquer outra célula inserimos a seguinte função: = CONT.SES(A:A; ">=" & C1;A:A;"<=" & C2) . Para a soma utilizamos esta função. = SOMASES(B:B;A:A;">="&D1;A:A;"<="&D2) . Lembrando que os valores inicial e final estão inclusos na contagem ou soma, caso queira excluir-los, basta retirar os sinais de " igual " do meio da função.


Acesse a pagina inicial do blog e tenha acesso a todo o conteúdo disponibilizado

Veja a vídeo aula.

Baixe a planilha

sábado, 5 de julho de 2014

Abrir planilha com senha excel VBA

Olá. Vou disponibilizar uma macro para abrir planilhas com senha do excel através de outra planilha.
Basta inserir na macro o caminho e a senha do arquivo.


Sub abre_planilha()
  
         Call Workbooks.Open(Filename:="D:\EXEMPLO\loja 1.xlsx", _
        Password:="123", WriteResPassword:="456", ReadOnly:=True)
    
    End Sub

Onde;
Password é a senha de proteção da planilha a ser aberta;
WriteResPassword é a senha de gravação;
ReadOnly é a forma de abertura da planilha, somente leitura ou leitura e gravação. Use "true" para somente leitura e "false" para leitura e gravação.


Quem ficou com dúvidas favor postar nos comentários.

Acesse a pagina inicial do blog e tenha acesso a todo o conteúdo disponibilizado

Veja a Vídeo Aula

domingo, 29 de junho de 2014

Atualizar dados entre planilhas com senha excel vba

Ola, o codigo abaixo serve para atualizar dados ou links entre planilhas do excel protegidas por senha. Aquela janela chata que fica solicitando a senha toda vez que voçê abre a planilha, elimine-a com o codigo abaixo.

Primeiramente selecione a aba dados, clique em "editar links", na janela que se abre clique em "prompt de inicialização ..." e marque a opção "não exibir alertas e nao atualizar links automáticos"

No editor VBA, insira um comando auto_open e insira o código abaixo.

Sub Atualizar()
'A linha abaixo insere a senha e pressiona enter
Application.SendKeys ("123{ENTER}")
'Atualiza o link com a planilha no caminho abaixo
ActiveWorkbook.UpdateLink Name:="D:\EXEMPLO\Loja 1.xlsx", Type:= _
xlExcelLinks

'Deve ser inserido um comando esc entre cada link, quando temos mais do que um.
SendKeys "{esc}", True

Application.SendKeys ("123{ENTER}")
ActiveWorkbook.UpdateLink Name:="D:\EXEMPLO\Loja 2.xlsx", Type:= _
xlExcelLinks

end sub

Acesse a pagina inicial do blog e tenha acesso a todo o conteúdo disponibilizado

VEJA A VIDEO AULA

sábado, 5 de abril de 2014

Menu Suspenso Excel

Olá. Neste post vou explicar como criar um menu suspenso no excel utilizando o VBA. Este menu é também chamado de menu PopUp, onde podem ser inseridos vários sub menus e FaceId.
Segue duas macros diferentes que geram o menu suspenso, e no fim da página o link para download da planilha pronta.

Menu Suspenso/ Menu PopUp

Sub Jogos()
Application.CommandBars("Cell").Reset

Dim cbc As CommandBarControl

'Oculta todos os comandos do botão direito
For Each cbc In Application.CommandBars("cell").Controls
cbc.Visible = False
Next cbc

'Adiciona um sub menu com o nome cartas

Application.CommandBars("Cell").Controls.Add(Type:=msoControlPopup).Caption = "Tabuleiro"
With Application.CommandBars("Cell").Controls("&Tabuleiro")

'Adiciona um sub menu com o nome xadrez
With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 217
.Caption = "Xadrez"
.OnAction = "Xadrez"
End With
With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 150
.Caption = "damas"
.OnAction = "damas"
End With
End With


Application.CommandBars("Cell").Controls.Add(Type:=msoControlPopup).Caption = "Eletronicos"
With Application.CommandBars("Cell").Controls("Eletronicos")
.BeginGroup = True

With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 59
.Caption = "Vídeo Game"
.OnAction = "Vídeo_Game"
End With
With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 574
.Caption = "Android"
.OnAction = "Android"
End With
With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 69
.Caption = "&Windows"
.OnAction = "Windows"
End With
End With

Application.CommandBars("Cell").Controls.Add(Type:=msoControlPopup).Caption = "Cartas"
With Application.CommandBars("Cell").Controls("&Cartas")
With .Controls.Add(Type:=msoControlPopup)
.Caption = "&Pretas"


With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 483
.Caption = "Espadas"
.OnAction = "Espadas"
End With
With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 484
.Caption = "Paus"
.OnAction = "Paus"
End With
End With

' No submenu cartas adiciona o submenu vermelhas
With .Controls.Add(Type:=msoControlPopup)
.Caption = "&Vermelhas"

' No submenu vermelhas adiciona o submenu menor que 5
With .Controls.Add(Type:=msoControlPopup)
.Caption = "Menor que 5"

With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 481
.Caption = "Copas"
.OnAction = "Copasmenor"
End With

With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 482
.Caption = "Ouro"
.OnAction = "Ouromenor"
End With

End With


With .Controls.Add(Type:=msoControlPopup)
.Caption = "Maior que 5"

With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 481
.Caption = "Copas"
.OnAction = "Copasmaior"
End With
With .CommandBar.Controls.Add(Type:=msoControlButton)
.FaceId = 482
.Caption = "Ouro"
.OnAction = "Ouromaior"
End With

End With

End With

End With



        'mostra o menu
       Application.CommandBars("Cell").ShowPopup

'reset do menu
Application.CommandBars("Cell").Reset
               For Each cbc In Application.CommandBars("cell").Controls
                cbc.Visible = True
        Next cbc


End Sub
Sub Xadrez()
MsgBox "Você escolheu Xadrez ", , "Jogos"
End Sub
Sub damas()
MsgBox "Você escolheu damas ", , "Jogos"
End Sub
Sub Vídeo_Game()
MsgBox "Você escolheu Tablet ", , "Jogos"
End Sub
Sub Android()
MsgBox "Você escolheu Android ", , "Jogos"
End Sub
Sub Windows()
MsgBox "Você escolheu Windows ", , "Jogos"
End Sub
Sub Espadas()
MsgBox "Você escolheu Espadas ", , "Jogos"
End Sub
Sub Paus()
MsgBox "Você escolheu Paus ", , "Jogos"
End Sub
Sub Copasmenor()
MsgBox "Você escolheu Copas menor do que 5 ", , "Jogos"
End Sub
Sub Ouromenor()
MsgBox "Você escolheu Ouro menor do que 5 ", , "Jogos"
End Sub
Sub Copasmaior()
MsgBox "Você escolheu Copas maior do que 5 ", , "Jogos"
End Sub
Sub Ouromaior()
MsgBox "Você escolheu Ouro maior do que 5 ", , "Jogos"
End Sub

---------------------------------------------------------------------------------------------------------------


Sub MenuSuspenso()
Application.CommandBars("Cell").Reset

Dim cbc As CommandBarControl

'Oculta todos os comandos do botão direito
For Each cbc In Application.CommandBars("cell").Controls
cbc.Visible = False
Next cbc

'Adiciona um comando ao menu suspenso
With Application.CommandBars("Cell").Controls.Add(Temporary:=True)
.Caption = "Word"
.OnAction = "Word"
.FaceId = 42
End With

With Application.CommandBars("Cell").Controls.Add(Temporary:=True)
.Caption = "Acces"
.OnAction = "Acces"
.FaceId = 264
End With
'Adiciona um comando ao menu suspenso
With Application.CommandBars("Cell").Controls.Add(Temporary:=True)
.Caption = "Excel"
.OnAction = "Excel1"
.FaceId = 263
End With

Application.CommandBars("Cell").ShowPopup
Application.CommandBars("Cell").Reset
               For Each cbc In Application.CommandBars("cell").Controls
                cbc.Visible = True
        Next cbc


End Sub
Sub Word()
MsgBox "Voce selecionou Word ", , "MS Office''"
End Sub
Sub Acces()
MsgBox "Voce selecionou Acces ", , "MS Office''"
Sub Excel1()
MsgBox "Voce selecionou Excel ", , "MS Office''"
End Sub

End Sub



Acesse a pagina inicial do blog e tenha acesso a todo o conteúdo disponibilizado


Baixar planilha

Caso o tenha problemas para baixar, solicite por e-mail: atualexcel@gmail.com

segunda-feira, 3 de março de 2014

PROCV E PROCH

O Excel permite fazer pesquisas baseadas em uma determinada lista de dados, usando determinado argumento para retornar um valor correspondente a ele. Sendo que a procura pode ser feita de duas maneiras diferentes: procura vertical (colunas) ou procura horizontal (linhas)

Para você definirmos qual das duas funções utilizar, obsrvamos na planilha como estão distribuídos os valores que poderão ser o resultado da busca: se os valores esiverem em colunas utilizamos a função PROCV, e se os valores estiverem em linhas utilizamos a função PROCH.

Sintaxes das funções PROCV E PROCH


  • =PROCV(valor_procurado; matriz_tabela; num_coluna; procurar_intervalo)
  • =PROCH(valor_procurado; matriz_tabela; num_linha; procurar_intervalo)

Onde:
  • valor_procurado é o argumento que deseja fornecer como base para a procura ser feita;
  • matriz_tabela é o intervalo onde se realizará a pesquisa;
  • num_coluna ou num_linha é a coluna ou a linha que se deseja obter o resultado, considerando que as colunas e linhas são contadas a partir do intervalo estipulado em matriz_tabela;
  • procurar_intervalo é a precisão da pesquisa, podendo ser exata ou por aproximação do valor desejado.
Sendo que:
  • Busca exata = 0
  • Busca aproximada = 1

Obs: O valor_procurado deve estar na primeira coluna ou na primeira linha do intervalo, caso contrário a pesquisa retornará erro.

Função PROCV

A função PROCV pesquisa um valor da primeira coluna de uma lista de dados especificado por você em valor_procurado. Ela então procura o número de colunas que você determinou em num_coluna e retorna o valor que encontrar.

No exemplo a seguir temos duas tabelas onde um contém o códio e o preço do produto e na outra temos a descrição e código , e que remos inserir o preço correspondente a cada produto na coluna H.
 
Exemplo:




Na célula H3, inserimos a formula, Usaremos o assistente de função para facilitar, clique em fx ou acesse o menu Inserir e clique no item Função
 
 

  • valor_procurado: é a célula G3;
  • matriz_tabela: São as colunas B e C;
  • num_coluna: é 2, pois o intervalo começa na coluna B, sendo que os valores a serem retornados estão na coluna C, ou seja a segunda coluna da matriz;
  • procurar_intervalo: é 0 "zero", pois queremos o valor exato da pesquisa.
  • Clique em OK após finalizar.


  • VEJA A VIDEO AULA

    Clique aqui para baixar a planilha



    Função PROCH?
    Esta função realiza uma pesquisa horizontalmente, ou seja ela faz a busca de um determinado argumento em linhas. O valor é procurado da primeira linha de uma lista de dados especificado por você em valor_procurado. Ela procura o número de linhas que você determinou em num_linha e retorna o valor que encontrar lá.

    Exemplo

    Aplicando a função PROCH na célula B12, onde ela irá avaliar a célula B11, e assim irá procurar este valor no intervalo B2:F9, e retornará o valor da linha 8 (Total) correspondente.


    Usaremos o assistente de função para facilitar, clique em fx ou acesse o menu Inserir e clique no item Função

     




     



















     


    • valor_procurado: é a célula B11;
    • matriz_tabela é o intervalo de B2:F9;
    • num_linha: é 8, pois o intervalo começa na linha 2, e os valores a serem retornados estão na linha 9 (Total);
    • procurar_intervalo: é 0 "zero", pois queremos o valor exato da pesquisa.

    Baixe as planilhas

    PROCV:   Clique aqui para baixar a planilha      
                     VEJA A VIDEO AULA

    PROCH:   Clique aqui para baixar a planilha
                     VEJA A VIDEO AULA


    domingo, 2 de março de 2014

    SOMASES NO EXCEL

    Neste post vamos aprender pra que serve o como usar a função SOMASES do excel.

    A função SOMASES é utilizada para soma condicionada, onde podemos somar valores com base em critérios pré estabelecidos. Esta função é similar a SOMASE onde pode-se somar valores com base em apenas um critério, na SOMASES podemos utilizar 127 intervalos e critérios.

    A sintaxe da função SOMASES tem os seguintes argumentos:

    intervalo_soma. Uma células ou um intervalo para somar, incluindo números ou nomes, intervalos ou referências de célula. Valores em branco e de texto são ignorados.
    intervalo_critérios1. O primeiro intervalo no qual queremos avaliar os critérios associados.
    critérios1. Os critérios no formato de um número, uma expressão, uma referência de célula ou um texto que define quais células no argumento intervalo_critérios1 serão adicionadas.
    Os critérios e intervalos citados acima são obrigatórios os demais são opcionais são opcionais.

    No exemplo vamos montar uma planilha para controle de faturamento dos pedidos, onde na plan1 temos todos pedidos com códigos, descrição e quantidade. Na plan2 temos os pedidos faturados, também com pedidos, códigos, descrição e quantidade.

    De posse da tabela de dados, vamos motar a fórmula, basta inseir na célula F3 e copiar para baixo


    
    
    Plan1_Todos os pedidos
     
    Plan2_Peiddos faturados

    SOMASES
     
    Segue o link para Download da planilha montada.

    Baixar Planilha

    Tutorial em video:
    https://www.youtube.com/watch?v=8QoJEXXObwI

    segunda-feira, 17 de fevereiro de 2014

    OPERADORES DO EXCEL

    Operadores de cálculos em fórmulas


    Os operadores especificam o tipo de cálculo que você deseja efetuar nos elementos de uma fórmula.
    O Microsoft Excel inclui quatro tipos diferentes de operadores de cálculo: aritméticos, de comparação, texto e referência.

    1 - Os operadores aritméticos efetuam operações matemáticas básicas, como adição, subtração ou
    multiplicação, combinam números e produzem resultados numéricos.

    Operador aritméticoSignificado Exemplo
    +(sinal de adição)Adição 4+2
    – (sinal de subtração) Subtração5-3
    * (sinal de multiplicação) Multiplicação2*2
    / (sinal de divisão)Divisão2/2
    % (símbolo de percentagem)Percentagem60%
    ^ (sinal de exponenciação)Exponenciação5^2


    2 - Os operadores de comparação comparam dois valores e retornam um valor lógico VERDADEIRO ou
    FALSO

    Operador de comparação Significado Exemplo
    = (sinal de igual)  Igual a  B3=E3
    > (sinal de maior ) Maior do que B3>E3
    < (sinal de menor) Menor do que  B3<E3
    >= (sinal de maior ou igual) Maior ou igual a B3>=E3
    <= (sinal de menor ou igual) Menor ou igual a B3<=E3
    <> (sinal de diferente) Diferente de B3<>E3


    3 - O operador de texto combina um ou mais valores de texto para produzir um único texto.

    Operador de comparação Significado Exemplo
    & (E comercial) Junta ou concatena dois ou mais valores e produz um único texto "Ho"&"tel" Retorna
    Hotel
     



    4 - Os operadores de referência combinam intervalos de células para cálculos

    Operador de
    comparação
    Significado Exemplo
    : (dois-pontos) Operador de intervalo, que produz uma
    referência a todas as células entre duas
    referências, incluindo as duas referências
    B5:B15
    ; (ponto-e-vírgula)  Operador de união, que combina diversas
    referências em uma referência 
    SOMA(B5:B6;B7:B8) 
    (espaço simples) Operador de interseção, que produz uma
    referência a células comuns a duas
    referências. Neste exemplo, a célula B7 é
    comum aos dois intervalos.
    SOMA(C5:C12 A5:D5)


    Um bom entendimento dos operadores citados acima facilita na hora de montar a fórmula no excel.

    CRIAR GRÁFICO DINÂMICO NO EXCEL

    Criar gráficos no excel pode parecer difícil, mas não é. Nesta postagem vamos aprender a criar um gráfico dinâmico, que se ajusta conforme a quantidade de valores que temos. Esiste várias maneiras de criar um gráfico dinâmico, a mais comum é através de tabela dinâmica. Neste exemplo usarei funções do excel para redimensionar o gráfico automaticamente.

    No exemplo farei um gráfico com as despezas mensais durante um ano.

    Primeiro precisamos criar a tabela de dados com os meses e os valores.
    Os valores serão inseridos no gráfico através da função DESLOC, para facilitar usaremos uma célula vazia fora da tabela de dados e inserimos a função conforme abaixo. Precisamos uma para o eixo x (horizontal) e outra para o eixo y (vertical).
    
    Função desloc

    Onde:
    Ref: É a referência das células que contém os valores, deve contemplar inclusive as células que ainda não tem valores, mas terão. Precisamos usar referencias fixas, para isso pressionamos a tecla F4.
    Para o eixo x selecionamos as células que conterão os 12 meses, para o eixo y selecionamos as células que conterão os valores referentes aos 12 meses.
    Lins: Usaremos zero.
    Cols: Usaremos zero.
    Altura: Se a tabela de valores for montada na horizontal deixamos vazio, se for na vertical, usamos uma formula que faça a contagem dos valores inseridos.
    Altura: Se a tabela de valores for montada na vertical deixamos vazio, se for na horizontal, usamos uma formula que faça a contagem dos valores inseridos.

    Agora precisamos nomear a serie com os valores, copiamos ela na barra de formulas e na guia Fórmulas clicamos em Gerenciador de nomes, na janela que abrir selecione novo.


     
     
    Na janela que abrir inserimos um nome e no campo refere-se a inserimos a formula que criamos. Faremos para o eixo x e o eixo y.


    Na guia inserir, inserimos um gráfico, e com o botão direito sobre o mesmo clicamos em selecionar dados. Na janela que abrir clicamos em adicionar.


    Nome da série é o título do gráfico, pode ser uma referencia a uma célula ou um texto.
    Valores da série: Iniciamos com =  mais o nome da planilha com a extensão, seguida do ponto de exclamação, mais o nome da série do eixo y, no nosso caso: =Gráfico_Dinâmico.xlsx!Eixo_y



    Repetimos o procedimento para o eixo horizontal, clicando em editar e inserindo o nome da série do eixo x.

     
     
    Ficará desta forma:

     
    Basta clicar em ok que o gráfico estará pronto.
    Veja que ao adicionarmos valores o gráfico se ajusta automaticamente.
     
     
     
     
     
     
     
    Dúvidas, favor inserir nos comentários.
     
     Segue o link para download da planilha com exemplo.

    Vídeo aula

    quinta-feira, 13 de fevereiro de 2014

    O QUE É UMA PLANILHA ELETRÔNICA?

    É um sistema constituído por uma tabela, composta de linhas e colunas, em que a interseção é chamada de celula, onde pode-se estipular valores, fórmulas e funções ou textos com possibilidades de serem manipuladas, para a obtenção dos resultados desejados.
    À medida que se altera um valor da planilha, todos os cálculos que envolvem o valor alterado serão recalculados automaticamente.