Olá pessoal, aqui é Dom, estamos trabalhando para que a cada dia o mundo em VBA Excel possa crescer, espero que curtam bastante nosso Blog. Até mais
terça-feira, 23 de junho de 2015
Excel Avançado - Recursos Avançados com SOLVER
Excel Avançado - Filtro avançado com Macros
Excel Avançado - Funções Avançada da SomaSe e Cont.Se
Recursos avançados com a função somase e cont.se, nesta aula utilizo os recursos mais aprimorados com essas funções.
Excel Avançado - Função Index e componente ComboBox para automatização
Excel Avançado - Procv - Proch e Proc - Aprenda na prática como essas funções se relacionam
Funções SomaSe e Cont.Se - aprenda a utilizar essas funções fantásticas
Aula 1 de Excel - Formatação e funções essenciais
quinta-feira, 14 de março de 2013
Procv personalizada com TextBox
Bom dia pessoal, estou aqui novamente para realizar um procv utilizando formulário e a propriedade formula local. Vamos Lá... Pressione ALT + F11 para ir para o visual basic e siga os passos
1 passo - Monte um formulário inserindo atraves do menu Inserir Form como mostra o exemplo abaixo
2 Passo - Dê dois cliques no botao procurar que você desenvolveu e acrescente este código
Crie a Macro para Abrir o Formulário pressionando o botao direito sobre a forma, pressione o botao novo e adicione o codigo abaixo, digite somente o userform1.show
Sub Retângulo1_Clique()
UserForm1.Show
End Sub
3 Passo - Pressione Alt + F11 para voltar a planilha e crie uma parecida como mostra o exemplo abaixo
4 Passo - Adicione a macro ao botão criado para abrir o formulario pressionando o botão direito sobre ele, o resultado será esse
Clique no Botao Procurar
1 passo - Monte um formulário inserindo atraves do menu Inserir Form como mostra o exemplo abaixo
2 Passo - Dê dois cliques no botao procurar que você desenvolveu e acrescente este código
Crie a Macro para Abrir o Formulário pressionando o botao direito sobre a forma, pressione o botao novo e adicione o codigo abaixo, digite somente o userform1.show
Sub Retângulo1_Clique()
UserForm1.Show
End Sub
3 Passo - Pressione Alt + F11 para voltar a planilha e crie uma parecida como mostra o exemplo abaixo
4 Passo - Adicione a macro ao botão criado para abrir o formulario pressionando o botão direito sobre ele, o resultado será esse
Clique no Botao Procurar
Ocultar Objetos do Excel
Ola Pessoal! Aqui é o professor Helder Ricardo Silva novamente postando soluções em VBA Excel.
Neste tutorial estarei mostrando como ocultar as ferramentas do Excel para a sua aplicação ter um toque a mais.
Vamos que vamos.
1 passo
Crie duas formas básicas como mostra o exemplo abaixo.
Neste tutorial estarei mostrando como ocultar as ferramentas do Excel para a sua aplicação ter um toque a mais.
Vamos que vamos.
1 passo
Crie duas formas básicas como mostra o exemplo abaixo.
2 Passo - Pressione ALT + F11 para ir para a tela de projeto do VBA
3 Passo - Menu Inserir - Módulo
4 Passo - crie uma macro com o nome de ocultar o exemplo mostra com fazer
5 Passo - Pressione Alt + F11 para alternar novamente na Planilha
6 Passo - Pressione o Botão direito sobre os botões que você criou e pressione adicionar macro e selecione a macro correspondente.
Resultado, quando as ferramentas estao ocultas
Obrigado pessoal, já volto com mais recursos do VBA para Excek,
sábado, 16 de junho de 2012
Tudo sobre Project
Um projeto é um esforço empreendido por um determinado tempo com a finalidade de gerar uma satisfação ao que se espera materealizar em resposta a projeção esperada. Sabendo que em toda a projeção se espera algo que ainda não ocorreu, mas que se espera alcançar. Quando se pensa em projetos, se pensa em criar um plano e com isso seguí-lo para então vislumbrar seu ponto máximo que é a conclusão com êxito. Projeto é um resultado alcançado que se realiza com planos, estratégias e etapas, envolvendo recursos, tempo e custo.
Segundo a enciclopédia livre todo projeto possui características:
As principais características dos projetos são:
O contexto da gerência de projetos descreve o ambiente em que um projeto opera. Sua observação é fundamental, já que o gerenciamento das atividades do dia-a-dia é necessário, mas não é o suficiente para o sucesso do projeto.
Fonte: A Guide to the Project Management Body of Knowledge (PMBOK® Guide). Third Edition ed. [S.l.]: Project Management Institute. ISBN 1-930699-45-X
Hoje para auxiliar os gerentes de projetos, temos muitas ferramentas para que a projeção venha ser concretizada. Na era da tecnologia podemos citar os softwares que mais auxilam no gerenciamento de projetos são eles:
http://en.wikipedia.org/wiki/GanttProject
http://en.wikipedia.org/wiki/OpenProj
http://en.wikipedia.org/wiki/Open_Workbench
E o MS-PROJECT da Microsoft que será discutido aqui.
O Blog tem por objetivo apresentar tudo o que é relacionado a projetos, como auxiliar nas dúvidas que poderão ser postadas.
Segundo a enciclopédia livre todo projeto possui características:
As principais características dos projetos são:
- temporários, possuem um início e um fim definidos.
- planejados, executado e controlado.
- entregam produtos, serviços ou resultados exclusivos.
- desenvolvidos em etapas e continuam por incremento com uma elaboração progressiva.
- realizados por pessoas.
- com recursos limitados.
O contexto da gerência de projetos descreve o ambiente em que um projeto opera. Sua observação é fundamental, já que o gerenciamento das atividades do dia-a-dia é necessário, mas não é o suficiente para o sucesso do projeto.
Fonte: A Guide to the Project Management Body of Knowledge (PMBOK® Guide). Third Edition ed. [S.l.]: Project Management Institute. ISBN 1-930699-45-X
Hoje para auxiliar os gerentes de projetos, temos muitas ferramentas para que a projeção venha ser concretizada. Na era da tecnologia podemos citar os softwares que mais auxilam no gerenciamento de projetos são eles:
http://en.wikipedia.org/wiki/GanttProject
http://en.wikipedia.org/wiki/OpenProj
http://en.wikipedia.org/wiki/Open_Workbench
E o MS-PROJECT da Microsoft que será discutido aqui.
O Blog tem por objetivo apresentar tudo o que é relacionado a projetos, como auxiliar nas dúvidas que poderão ser postadas.
sexta-feira, 17 de fevereiro de 2012
Procv com VBA, muito Fácil
Pessoal pediram para criar um procedimento que estivesse sendo aplicado a Procv, no VBA a Procv se chama Vlookup()
então vamos ao procedimento:
Sub ProcuraV()
On Error GoTo nossoerro
Dim codigo As Variant
Dim tabela As String
Dim vf As Boolean
Dim entrada As Variant
codigo = InputBox("informe o código do cliente")
tabela = "A:E"
vf = False
nome = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 2, vf)
endereco = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 3, vf)
bairro = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 4, vf)
salario = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 5, vf)
MsgBox "Nome: " & vtab & nome _
& vbCr & "Endereço: " & vtab & endereco _
& vbCr & "Bairro : " & vtab & bairro _
& vbCr & "Salário : " & vtab & salario
nossoerro:
If Err.Number = 1004 Then
MsgBox "Este código não está cadastrado", vbCritical
End If
End Sub
então vamos ao procedimento:
Sub ProcuraV()
On Error GoTo nossoerro
Dim codigo As Variant
Dim tabela As String
Dim vf As Boolean
Dim entrada As Variant
codigo = InputBox("informe o código do cliente")
tabela = "A:E"
vf = False
nome = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 2, vf)
endereco = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 3, vf)
bairro = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 4, vf)
salario = Application.WorksheetFunction.VLookup(Val(codigo), Range(tabela), 5, vf)
MsgBox "Nome: " & vtab & nome _
& vbCr & "Endereço: " & vtab & endereco _
& vbCr & "Bairro : " & vtab & bairro _
& vbCr & "Salário : " & vtab & salario
nossoerro:
If Err.Number = 1004 Then
MsgBox "Este código não está cadastrado", vbCritical
End If
End Sub
Adicionando um Registro com Validação e Pergunta se continua ou não
Boa noite pessoal, a pedido dos meus alunos estou criando um procedimento que valida a caixa de entrada do usuário e pergunta se devo ou não continuar o cadastro. O procedimento envolve etiquetas de nomes para poder se deslocar alternadamente entre os códigos, se você não conhece o sistema com etiquetas, dê uma olhada detalhada no procedimento para que possa compreender melhor.
Sub cadastrar()
Dim total As Variant
'variáveis de preenchimento
Dim codigo As Variant
Dim nome As Variant
Dim endereco As Variant
Dim bairro As Variant
Dim salario As Variant
total = (Cells(Rows.Count, 1).End(xlUp).Row)
codigo = total + 1
vnome:
nome = Trim(UCase(InputBox("Informe o nome do Cliente")))
vendereco:
endereco = Trim(UCase(InputBox("Informe o endereco do Cliente")))
vbairro:
bairro = Trim(UCase(InputBox("Informe o Bairro do Cliente")))
vsalario:
salario = Trim(InputBox("Informe o Salário do Cliente"))
' fazendo a verificação
If nome = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o nome do cliente", vbCritical, "Nome do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo, vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vnome
Else
GoTo final
End If
Loop
End If
If endereco = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o endereço do cliente", vbCritical, "Endereço do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo + vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vendereco
Else
GoTo final
End If
Loop
End If
If bairro = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o Bairro do cliente", vbCritical, "Bairro do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo + vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vbairro
Else
GoTo final
End If
Loop
End If
If salario = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o Salario do cliente", vbCritical, "Salario do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo + vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vsalario
Else
GoTo final
End If
Loop
End If
' ------------------------------- Fim da Validação ---------------------------------
'-------------------- Arnazenando na última linha do cadastro ----------------------
Cells(total + 1, 1).Value = codigo
Cells(total + 1, 2).Value = nome
Cells(total + 1, 3).Value = endereco
Cells(total + 1, 4).Value = bairro
Cells(total + 1, 5).Value = salario
final:
MsgBox "Cadastro cancelado pelo usuário", vbInformation, "cancelado"
End Sub
Sub cadastrar()
Dim total As Variant
'variáveis de preenchimento
Dim codigo As Variant
Dim nome As Variant
Dim endereco As Variant
Dim bairro As Variant
Dim salario As Variant
total = (Cells(Rows.Count, 1).End(xlUp).Row)
codigo = total + 1
vnome:
nome = Trim(UCase(InputBox("Informe o nome do Cliente")))
vendereco:
endereco = Trim(UCase(InputBox("Informe o endereco do Cliente")))
vbairro:
bairro = Trim(UCase(InputBox("Informe o Bairro do Cliente")))
vsalario:
salario = Trim(InputBox("Informe o Salário do Cliente"))
' fazendo a verificação
If nome = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o nome do cliente", vbCritical, "Nome do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo, vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vnome
Else
GoTo final
End If
Loop
End If
If endereco = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o endereço do cliente", vbCritical, "Endereço do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo + vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vendereco
Else
GoTo final
End If
Loop
End If
If bairro = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o Bairro do cliente", vbCritical, "Bairro do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo + vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vbairro
Else
GoTo final
End If
Loop
End If
If salario = "" Then
Do While contador <> 3
contador = contador + 1
MsgBox "Por favor entre com o Salario do cliente", vbCritical, "Salario do Cliente vazio"
continuar = MsgBox("Continuar tentando? ", vbYesNo + vbQuestion, "Continuar?")
If continuar = vbYes Then
GoTo vsalario
Else
GoTo final
End If
Loop
End If
' ------------------------------- Fim da Validação ---------------------------------
'-------------------- Arnazenando na última linha do cadastro ----------------------
Cells(total + 1, 1).Value = codigo
Cells(total + 1, 2).Value = nome
Cells(total + 1, 3).Value = endereco
Cells(total + 1, 4).Value = bairro
Cells(total + 1, 5).Value = salario
final:
MsgBox "Cadastro cancelado pelo usuário", vbInformation, "cancelado"
End Sub
Como Navegar entre os registros
Boa Noite pessoal, hoje estaremos incluindo os botões avançar e recuar na planilha de cadastro, espero que gostem. Este procedimento pode ser aplicado em formulários, como iremos mostrar mais adiante.
Espero que curtam a macro.
Sub Avancar()
Dim total As Variant
total = (Cells(Rows.Count, 1).End(xlUp).Row) - 1
If ActiveCell.Row > total Then
MsgBox "Final da listagem"
Else
Cells(ActiveCell.Row, 1).Offset(1, 0).Select
End If
end sub
=======================
Sub Recuar()
Dim total As Variant
total = (Cells(Rows.Count, 1).End(xlUp).Row) - 1
If ActiveCell.Row = 2 Then
MsgBox "Início da listagem"
Else
Cells(ActiveCell.Row, 1).Offset(-1, 0).Select
End If
End Sub
Espero que curtam a macro.
Sub Avancar()
Dim total As Variant
total = (Cells(Rows.Count, 1).End(xlUp).Row) - 1
If ActiveCell.Row > total Then
MsgBox "Final da listagem"
Else
Cells(ActiveCell.Row, 1).Offset(1, 0).Select
End If
end sub
=======================
Sub Recuar()
Dim total As Variant
total = (Cells(Rows.Count, 1).End(xlUp).Row) - 1
If ActiveCell.Row = 2 Then
MsgBox "Início da listagem"
Else
Cells(ActiveCell.Row, 1).Offset(-1, 0).Select
End If
End Sub
Como excluir o Registro Atual em VBA
Boa Noite Galera, estou mais uma vez aqui para dar aquela ajudinha em Excel VBA, hoje estaremos exluindo a linha atual do registro. Então vamos lá.
Sub Excluir()
Dim confirmar As Variant
confirmar = MsgBox("Deseja Excluir o Registro: " & ActiveCell.Value & " Sim ou Não", vbYesNo + vbQuestion, "Excluir?")
If ActiveCell.Row = 1 Then
MsgBox "Você não pode excluir a linha do Cabeçalho", vbCritical
Else
If confirmar = vbYes Then
Selection.EntireRow.Delete
Else
End If
End If
End sub
agora é só adicionar no Botão e ir para a galera.
Sub Excluir()
Dim confirmar As Variant
confirmar = MsgBox("Deseja Excluir o Registro: " & ActiveCell.Value & " Sim ou Não", vbYesNo + vbQuestion, "Excluir?")
If ActiveCell.Row = 1 Then
MsgBox "Você não pode excluir a linha do Cabeçalho", vbCritical
Else
If confirmar = vbYes Then
Selection.EntireRow.Delete
Else
End If
End If
End sub
agora é só adicionar no Botão e ir para a galera.
Como contar as linhas cadastradas mesmo apresentando linhas em Branco
Boa Noite Pessoal. Aqui vai mais uma dica importante em Excel VBA. Irei mostrar como criar uma macro para contar as linhas cadastradas, mesmo apresentando linhas em Branco.
Sub contagem()
Dim total as variant
range("a1").select
total = (cells(rows.count,1).end(xlup).row)-1
Msgbox "O total de registros é de: " & total
end sub
É isso ae agora atribua a macro em um botão na sua planilha e verifique quantas linhas foram preenchidas no seu cadastro.
Veja o resultado
Sub contagem()
Dim total as variant
range("a1").select
total = (cells(rows.count,1).end(xlup).row)-1
Msgbox "O total de registros é de: " & total
end sub
É isso ae agora atribua a macro em um botão na sua planilha e verifique quantas linhas foram preenchidas no seu cadastro.
Veja o resultado
Armazenamento de Dados em Pastas utilizando Excel
Ola Boa Noite!
Aqui vai uma dica para quem está procurando cadastrar dados em uma pasta do Excel e armazenar o cadastro em Outra. o Resultado é fantástico. Espero que tenham gostado da dica.
Sub transfer()
Application.ScreenUpdating = False
Application.Workbooks.Open ("Saturno\dados_alunos\1\DADOS.XLSX ")
Windows("DADOS2.XLSm").Activate
Range("A2:E2").Select
Selection.Copy
Windows("DADOS.XLSX").Activate
Range("A2").Select
Selection.EntireRow.Insert
Range("A2").Select
Selection.PasteSpecial
Total = (Cells(Rows.Count, 1).End(xlUp).Row) - 1
Workbooks("DADOS.XLSX").Save
Windows("DADOS.XLSX").Close
Range("a2").Select
MsgBox "Dados Gravados no Servidor com Sucesso... Agora são: " & Total & " de registros cadastrados.", vbInformation, "Dados Gravados..."
Windows("DADOS2.XLSM").Activate
Application.WindowState = xlMaximized
Application.CutCopyMode = False
end Sub
Aqui vai uma dica para quem está procurando cadastrar dados em uma pasta do Excel e armazenar o cadastro em Outra. o Resultado é fantástico. Espero que tenham gostado da dica.
Sub transfer()
Application.ScreenUpdating = False
Application.Workbooks.Open ("Saturno\dados_alunos\1\DADOS.XLSX ")
Windows("DADOS2.XLSm").Activate
Range("A2:E2").Select
Selection.Copy
Windows("DADOS.XLSX").Activate
Range("A2").Select
Selection.EntireRow.Insert
Range("A2").Select
Selection.PasteSpecial
Total = (Cells(Rows.Count, 1).End(xlUp).Row) - 1
Workbooks("DADOS.XLSX").Save
Windows("DADOS.XLSX").Close
Range("a2").Select
MsgBox "Dados Gravados no Servidor com Sucesso... Agora são: " & Total & " de registros cadastrados.", vbInformation, "Dados Gravados..."
Windows("DADOS2.XLSM").Activate
Application.WindowState = xlMaximized
Application.CutCopyMode = False
end Sub
Assinar:
Postagens (Atom)













