Excel VBA - Loops

  • - Acesso Livre
  • Documentos

    Ordenar por : Nome | Data | Acessos [ Descendente ]

    Excel vba loop contador linha coluna autonumeracao Excel vba loop contador linha coluna autonumeracao

    popular!
    Adicionado em: 19/03/2011
    Modificado em: 19/03/2011
    Tamanho: 67.86 KB
    Downloads: 1193

    Saberexcel - site das macros

    Essa macro do Aplicativo Microsoft Excel VBA(Visual Basic Application), contém dois Loop(s) For...Next, que insere um contador na coluna(A) e também contador que auto-incrementa linha e coluna. Espero que o exemplo lhe seja útil. Fique com Deus, Expedito Marcondes.

    Sub Contador_linha_coluna()
    Dim vLinha As Long
    Dim vColuna As Long

    Cells(5, 5) = "Aprenda VBA"
    Cells(6, 5) = "Praticando - produtos didáticos Saberexcel"

    For vLinha = 1 To 10
    Cells(vLinha, 1) = vLinha
    Next vLinha

    For vColuna = 1 To 10
    Cells(12, vColuna) = vColuna
    Next vColuna

    End Sub

    Sub limpar_teste()
    [sbx].ClearContents
    End Sub


    Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel

     
     Publicidade
    Compre com segurança, garantia e ótimos preços
    Eletrônicos - Submarino.com.br

    Loop do loop until busca palavra determinada area Loop do loop until busca palavra determinada area

    popular!
    Adicionado em: 06/02/2012
    Modificado em: 06/02/2012
    Tamanho: 99.79 KB
    Downloads: 1753

    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)

    Loop do until loop localiza celula cor interior verde brilhante Loop do until loop localiza celula cor interior verde brilhante

    popular!
    Adicionado em: 06/02/2012
    Modificado em: 06/02/2012
    Tamanho: 25.95 KB
    Downloads: 963

    Escola Saberexcel VBA Estudos - Treinamentos com Macros, Fórmulas e Funções

    Esse macro do Aplicativo Microsoft Excel VBA(visual Basic application) busca em determinada área de células pela primeira ocorrencia de célula
    com interior verde claro, retorna o endereço da célula, desloca uma linha a direita e e também insere a cor verde
    Esse exemplo de planiha faz parte de Assine nosso Modulo 2012 - Boletins Treinamentos VBA
    Assine agora mesmo nosso Módulo 2012 - Contendo os Boletins Mensais.


    Assine nosso Modulo 2012 - Boletins Treinamentos VBA



    INSTRUÇÃO: DO..UNTIL...LOOP

    Sub Loop_do_until_loop_encontrar_celula_verde_brilhante()
    Dim vContador 'Declaração de uma variável
    vNumLin = Row 'variável

     

    With Selection
    Range("c5:c20").Select
    vNumLin = Selection.Rows.Count 'Número de linhas dentro da região selecionada
    End With

    vContador = 0 'atribuindo o valor zero a variável contador
    Range("c6").Select 'iniciando pela célula c6 para efeturar a busca

    Do Until Selection.Interior.ColorIndex = 4 'faça o loop enquanto não for da cor verde brilhante
    ActiveCell.Offset(1, 0).Select 'desloque apenas uma linha abaixo por vez
    If vContador > vNumLin - 3 Then Exit Sub 'Numero de loops limitado a 15 até achar a célula interior verde brilhante.
    'localiza a célula verde brilhante e sai do loop mostrando a mensagem e copia célula para uma celula à direita
    vContador = vContador + 1 'adicionando um ao contador
    Loop

    MsgBox "Selecionada célula de cor verde brilhante [" & ActiveCell.AddressLocal & " ] vamos copiar a célula para direita"
    'Deslocar uma célula a direita

    Selection.Copy
    Selection.Offset(0, 3).Insert Shift:=xlToRight
    Application.CutCopyMode = False

    End Sub

    '- - - - - - - - - - - - - - - -
    Sub limpar_teste()
    [F6:F20].Clear
    [G1].Select
    End Sub



    Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções.



     

    vba concatenar valores de duas colunas vba concatenar valores de duas colunas

    popular!
    Adicionado em: 20/11/2010
    Modificado em: 10/01/2011
    Tamanho: 32.67 KB
    Downloads: 808

    SaberExcel o Site das Macros
    Macro do Aplicativo Microsoft Excel VBA, concatena valores da coluna(A) e Coluna(B) em uma terceira coluna(C).
    observe que usei a Função SET para referenciar (Setar) as Colunas

    Option Explicit
    Option Base 1

    Sub Concatena_dados_de_duas_colunas()

    Dim vaColuna1 As Variant, vaColuna2 As Variant, vaDados() As Variant
    Dim wsPlan As Worksheet
    Dim rnColuna1 As Range, rnColuna2 As Range, rnDados As Range
    Dim iNumero As Long

    Set wsPlan = Worksheets("Plan1")
    Set rnColuna1 = wsPlan.Range("A2", Range("A65536").End(xlUp))
    Set rnColuna2 = wsPlan.Range("B2", Range("B65536").End(xlUp))

    vaColuna1 = rnColuna1.Value
    vaColuna2 = rnColuna2.Value

    ReDim vaDados(1 To UBound(vaColuna1))

    For iNumero = 1 To UBound(vaColuna1)
    vaDados(iNumero) = vaColuna1(iNumero, 1) & " " & vaColuna2(iNumero, 1)
    Next iNumero

    Set rnDados = wsPlan.Range("C2", Range("C" & UBound(vaColuna1) + 1))
    rnDados.Value = Application.Transpose(vaDados)

    End Sub

    Sub limpar()
    Range("c1:C10").ClearContents
    End Sub



    Aprenda sobre Aplicativo Microsoft Excel VBA SaberExcel




    vba gravador macros arrastar soltar autonumeracao vba gravador macros arrastar soltar autonumeracao

    popular!
    Adicionado em: 01/12/2010
    Modificado em: 01/12/2010
    Tamanho: 18.84 KB
    Downloads: 633

    Saberexcel - o site das macros
    Essas macros do Aplicativo Microsoft Excel VBA, inserem uma autonumeração reptindo os passos de arrastar e soltar.
    Observe como inserir uma autonumeração a partir de uma macro gravada no GM(Gravador de Macros).
    Neste exemplo eu peguei uma macro gravada, fiz uma pequena depuração para que fique melhor um pouquinho e abaixo inserí o modo correto de fazer uma macro para essa finalidade.
    .
    Na verdade essa macro é a mesma coisa de você digitar: 1 na célula(A1), 2 na célula(A2), selecionar(A1:A2), achar o ponto cruz escuro e arrastar os números até a linha desejada.

    Em nosso Curso Completo Microsoft Excel VBA - o Caderno_1 aborda o assunto sobre o Gravador de Macros - a importancia de deter esse conhecimento. que é muito importante no aprendizado MS Excel VBA - 70% do aprendizado.

    Se voce quiser praticar como gravar uma macro, acione o gravador de macros, na célula(A1) însira o número 1, na célula(A2) número 2, em seguida
    selecione as células (A1:A2), ache o ponto cruz (escuro) na parte inferior direita da borda e arraste até a linha desejada, poderá em seguida,
    selecionar a célula (B1), ao executar a macro, será selecionado a célula(b1). Espero que isso possa lhe ser útil.



    Sub macro_gravada_sem_depuracao()
    '
    ' Macro Gravada 20/07/2010 por Saberexcel
    '
    '
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "1"
    Range("A2").Select
    ActiveCell.FormulaR1C1 = "2"
    Range("A1:A2").Select
    Selection.AutoFill Destination:=Range("A1:A20"), Type:=xlFillDefault
    Range("b1").Select

    End Sub


    depurando a macro e melhorando a qualidade no caso de fórmulas deverá manter o FormulaR1C1, do contrario não há necessidade,
    observe que a macro seleciona a célula primeiro para depois enviar o valor, poderá fazer isso diretamente usando Range.Propriedade Value

    Sub melhorando_um_pouquinho()
    Range("A1").Value = "1"
    Range("A2").Value = "2"
    Range("A1:A2").AutoFill Destination:=Range("A1:A20"), Type:=xlFillDefault
    Range("A1:A10").Select
    End Sub

    Sub maneira_correta()
    With Cells(1, 1)
    .Value = 1
    .Resize(20).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1, Stop:=20
    End With
    End Sub

    Sub limpar_teste()
    [A1:A100].ClearContents
    End Sub


    Aprenda tudo sobre o Aplicativo Microsoft Excel VBA com SaberExcel




    Baixe o exemplo de planilha contendo as macros acima




    Publicidade:
    Compre com segurança, garantia e ótimos preços nas lojas SubMarino
    .

    Informática - Submarino.com.br

    Página 1 de 3

    Google Associados

    Depoimentos

    Adicione Saberexcel Favoritos

     
     

    Aprenda tudo sobre o Aplicativo Microsoft Excel VBA

    Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel,


       Sobre as WorksheetFunctions Funções de Planilhas que retornam valores do VBA