Excel VBA - Loops

  • - Acesso Livre
  • Documentos

    Ordenar por : Nome | Data | Acessos | [ Descendente ]

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

    popular!
    Adicionado em: 01/12/2010
    Modificado em: 01/12/2010
    Tamanho: Vazio
    Downloads: 851

    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

    vba loop instrucao do loop insere dados em determinadas linhas vba loop instrucao do loop insere dados em determinadas linhas

    popular!
    Adicionado em: 30/11/2010
    Modificado em: 30/11/2010
    Tamanho: Vazio
    Downloads: 911

    Saberexcel - o site das macros
    Essa macro do Aplicativo Microsoft Excel VBA, contém uma instrução Do...Loop (until) que insere determinados dados em um intervalo de linhas pre-determinado, neste caso usamos 300 linhas mas poderá ser 3000 ou 30000, optamos por inserir a palavra "Saberexcel". Também usei a range.propriedade OffSet, delocará uma coluna a direita e inserirá a frase "Aprendendo Macros VBA", logo seleciona a linha de baixo e continua o laço por 300 linhas abaixo. Em nosso Curso completo Microsoft Excel VBA, há uma materia que falamos sobre a renomeação os Módulos de modo que voce possa ver uma macro e já perceber a que módulo pertence, observe que renomeie o Modulo EX: SBTreinamento - então aproveito esses tres primeiro nomes para iniciar minhas macros, facilita muito quando trabalhamos com uma quantidade grande de macros e diversos módulos.

    Sub SBT_Testando_instrucao_Do_Loop_Until()
    Range("A1").Select

    Do Until Selection.Row = 300 'determinando a quantidade de linhas a serem inseridas as palavras abaixo
    Selection.Value = "Saberexcel"
    Selection.Offset(1, 0).Select 'deslocando uma linha da célula ativa
    Selection.Offset(0, 1).Value = "Aprendendo Macro" 'deslocando uma coluna da célula ativa
    Selection.Offset(0, 2).Value = "Vou Aprender!!" 'deslocando duas colunas da célula ativa
    Selection.Offset(0, 3).Value = "com Deus vou caminhando!" 'deslocando tres colunas a direita da célula ativa
    Loop

    Columns("A:D").AutoFit 'ajusta as colunas com o tamanho dados
    Range("A1").Select

    End Sub

    Sub SBT_limpar()
    [A2:D350].ClearContents 'limpando a área para o teste
    [E1].Select
    End Sub

    Sub SBT_ver()
    [Plan1].Shapes("sb").Visible = True
    [Plan1].Shapes("sb1").Visible = True
    End Sub

    Sub SBT_oc()
    [Plan1].Shapes("sb").Visible = False
    [Plan1].Shapes("sb1").Visible = False
    End Sub

    Sub SBT_visualizar_macros_vbe()
    Dim resposta As String
    resposta = MsgBox("deseja visualizar macros no módulo VBE?", vbYesNo, "Saberexcel - site das macros")
    If resposta = 6 Then
    Application.Goto reference:="Testando_instrucao_Do_Loop_Until"
    End If
    End Sub


    Aprenda sobre o Aplicativo Microsoft Excel VBA - Saberexcel




    Baixe o exemplo de planilha contendo as macros acima




    Publicidade:
    Compre com segurança, baixos preços e garantia de qualidade nas lojas SubMarino
    Informática - Submarino.com.br

    vba loop verifica celulas em branco insere palavra vba loop verifica celulas em branco insere palavra

    popular!
    Adicionado em: 01/12/2010
    Modificado em: 01/12/2010
    Tamanho: Vazio
    Downloads: 936

    Saberexcel - o site das Macros
    Macro do Aplicativo Microsoft Excel VBA verfica as células vazias de um determinado intervalo de células (Range), e nestas células vazias insere uma palavra. Veja o exemplo de Planilha, baixe-a no final da pagina.


    Sub Inserir_palavra_em_celulas_branco()

    Dim vCelula As Range

    For Each vCelula In Range("A1:D100")
    If IsEmpty(vCelula) Then vCelula = "em branco": vCelula.Font.ColorIndex = 5 '
    esses dois (:) pontos é o mesmo que próxima linha (Linha debaixo)
    Next vCelula

    End Sub

    Sub Copiar_para_teste()
    Sheets("Plan2").Range("A1:D100").Copy
    Sheets("Plan1").Select
    Range("A1").Select
    ActiveSheet.Paste
    Range("E1").Select
    Application.CutCopyMode = False
    Range("E6").Select
    End Sub

    Sub Limpar()
    [A1:D100].ClearContents
    [A1].Select
    End Sub



    Aprenda tudo sobre o Aplicativo Microsoft Excel VBA - SaberExcel





    Publicidade
    Compre com garantia, segurança e ótimos preços nas lojas SubMarino
    Informática - Submarino.com.br

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

    popular!
    Adicionado em: 20/11/2010
    Modificado em: 10/01/2011
    Tamanho: Vazio
    Downloads: 1029

    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




    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: Vazio
    Downloads: 1187

    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.



     

    Página 2 de 3

    PROMOÇÃO DIDÁTICOS SABEREXCEL



    Adquira já o Acesso Imediato
    à Area de Membros

    Compra Grantida --- Entrega Imediata

    Aprenda Excel VBA com Simplicidade de 
    códigos e Eficácia, Escrevendo Menos e
    Fazendo Mais.

    '-------------------------------------'
    Entrega Imediata:
    +  500 Video Aulas MS Excel VBA
    +  35.000 Planilhas Excel e VBA
    +  Coleção 25.000 Macros MS Excel VBA
    +  141 Planilhas Instruções Loops
    +  341 Planilhas WorksheetFunctions(VBA)
    +    04 Módulos Como Fazer Excel VBA
    +  Curso Completo MS Excel VBA
    +  Planilhas Inteligentes


    Pesquisa Google SaberExcel

    Publicidade Google

    <script type="text/javascript"><!--

    google_ad_client = "ca-pub-2317234650173689";

    /* retangulo 336 x 280 */

    google_ad_slot = "0315083363";

    google_ad_width = 336;

    google_ad_height = 280;

    //-->

    </script>

    <script type="text/javascript"

    src="http://pagead2.googlesyndication.com/pagead/show_ads.js">

    </script>

    Publicidade

    RSFirewallProtected


    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