Escola Saberexcel VBA Estudos - Treinamento com Macros, Fórmulas e Funções
Esse macro do Aplicativo Microsoft Excel VBA(visual Basic Application), com a Instrução [Do... Loop ... Until], faz uma verificação em determinada área de células (Intervalo de células), busca por determinada Palavra 'Exata', e retorna o endereço da célula onde esta localizada, auxiliada por um objeto InptBox.
Este Arquivo faz parte de Nosso Modulo 2012 - (Boletim_01_Treinamento Instruções_Loops VBA) Assine já tenha acesso aos Boletins 2012, ASSINE JÁ: Treinamento Excel VBA - Modulos_2012 e Boletins Treinamentos Microsoft Excel VBA (já foi classificado como trabalho nota 10 pelos usuários/desenvolvedores) dificilmente encontrará na internet um trabalho completo como este, tratando de todas as instruções Loops.
INSTRUÇÃO DO...LO OP...UNTIL Essa instrução loop verifica a palavra digitada para busca em determinado intervalo de células o macro retorna o endereço e o valor da célula onde foi encontrada. observe que o macro insere sua busca em duas colunas (N e O) com finalidade também idática. retornando os valores para a folha de planilha
Sub Loop_do_loop_until_localizar_palavras_area() Dim PrimeiraCelula As String, vCelulas As Range 'Declaração de variáveis
vbusca = InputBox("Digite a palavra para busca", "Escola SaberExcel VBA Estudos®") 'Caixa de diálogo - entrada de dados Range("C6:F10").Select 'Intervalo de células para realização da busca
Set vCelulas = Selection.Find(vbusca) 'Faça a busca da palavra dentro da seleção
If Not vCelulas Is Nothing Then 'faça se as células não estiverem vazias PrimeiraCelula = vCelulas.Address 'Variável
Do 'faça o seguinte 'caso a inputbox estiver em branco. If vbusca = "" Then MsgBox ("Digite uma palavra para busca"), vbInformation, "Saberexcel - o site das macros" Exit Sub End If
MsgBox "A palavra [ " & vbusca & " ] está na célula [ " & vCelulas.Address & " ] " & _ "Palavra: [ " & vCelulas.Value & " ]", vbInformation, "Escola Saberexcel VBA Estudos®"
[N65000].End(xlUp).Offset(1, 0).Value = vCelulas.Value [N65000].End(xlUp).Offset(0, 1).Value = vCelulas.Address
Set vCelulas = Selection.FindNext(vCelulas) 'faça a busca na região especificada Loop Until vCelulas.Address = PrimeiraCelula 'faça o loop até que o endereço da célula seja igual à primeira célula
End If End Sub
Sub visualizar_macro() Dim Resposta As String Resposta = MsgBox("deseja visualizar(tela ou vbe)?" & vbCrLf & " se SIM = Tela" & vbCrLf & " se NAO = VBE", _ vbYesNo, "Escola Saberexcel VBA Estudos®") If Resposta = 6 Then ActiveSheet.Shapes.Range(Array("macro")).Select Selection.Verb Verb:=xlPrimary Else Application.Goto reference:="Loop_do_loop_until_localizar_palavras_area" End If End Sub
Assine já nosso Excel VBA - Modulos_2012 e Boletins Treinamentos Microsoft Excel VBA
ASSINE MODULO 2012 - Boletin_01 - Treinamento com Instruções Loops (141 Planilhas)
|