Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções
Fiz essa planilha com macros do aplicativo MS Excel VBA, para mostrar a amiga Néia, de como Copiar um determinado espaço ((intervalo) de linhas/Colunas) a partir de um critério.
Neste caso fiz uma lista suspensa na célula (F2) por Validação de Datas,
observe que usei o Evento Change da folha de planilha para chamar o Macro assim que a escolha for efetuada.
Usei a instrução For...Next e a condição IF para localizar a célula na Coluna(E) e compará-la com o criterio de busca na célula(f2).
Ao encontrar copiará o espaço(intervalo) de colunas (F? a Q?). issousando a propriedade Resize (Redimensiona o Intervalo Especifico) e Offset(Deloca Linhas e Colunas) para direção desejada.
'-' Fiz ainda um "Colore Caracter', que colore de vermelho o sétimo caracter do conteúdo da coluna D, e outra macro para retornar a cor Preto da fonte.Observe neste exemplo que usei uma seta na coluna D, indicando a escolha, isso foi feito com a fonte Windings 3, letra u,
Usei a propriedade Offset deslocar uma coluna anterior.
'- - - - - - - - - - - - - -
Espero que o exemplo possa ajudá-los
Fique com Deus,
Expedito Marcondes.
'// ====='
Sub sbx_busca_dados_coluna_linha()
Dim vLin, X As Long
Dim z As String
X = Cells(Rows.Count, "e").End(xlUp).Row '// =====' localizar dinamicamente a ultima linha usada col(E)
Range(Cells(5, "d"), Cells(X, "d")).ClearContents '//======' limpar area coluna(D) sinal >
For vLin = 5 To Cells(Rows.Count, "e").End(xlUp).Row
If Cells(vLin, "e") = Cells(2, "f") Then '//====' fazer a comparação coluna(e) e celula(f2)
Cells(vLin, "e").Offset(0, 1).Resize(1, 12).Copy [h2] '//====' selecionar area para copiar
Cells(vLin, "e").Offset(0, -1).Value = "u" '// para inserir o sinal na coluna(d)
Cells(vLin, "e").Offset(0, -1).Font.Name = "Wingdings 3" '//===='inserir o sinal na coluna(D)
z = Cells(vLin, "e")
Exit For '//======='ao encontar e copiar para celula(h2) saí do loop
End If
Next vLin
MsgBox "Linha [ " & vLin & " ] Letra [ " & UCase(z) & " ] filtrados com sucesso!" & vbCrLf & _
"- - - - - - - - - - - - - - - - - - - - - - -" & vbCrLf & _
"Escola Saberexcel VBA Estudos® " & vbCrLf & _
"Treinamentos com Macros, Fórmulase Funções ", vbInformation, "Escola Saberexcel VBA Estudos®"
[f1].Select
End Sub
'//======= colorir sétimo caracter da colun(f) em vermelho
Sub sbx_colorir_setimo_caracter_vermelho()
Dim i As Long
For Col = 6 To 19
For i = 1 To Cells(Rows.Count, "f").End(xlUp).Row
Cells(i, Col).Characters(Start:=7, Length:=1).Font.ColorIndex = 3
Next i
Next Col
Saber1.Shapes("ver").Visible = False
Saber1.Shapes("pre").Visible = True
End Sub
'//======= colorir sétimo caracter da colun(f) em vermelho
Sub sbx_colorir_setimo_caracter_preto()
Dim i As Long
For Col = 6 To 19
For i = 1 To Cells(Rows.Count, "f").End(xlUp).Row
Cells(i, Col).Characters(Start:=7, Length:=1).Font.ColorIndex = 1
Next i
Next Col
Saber1.Shapes("ver").Visible = True
Saber1.Shapes("pre").Visible = False
End Sub
Sub sbx_selecionar_f2()
[f2].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.
Baixe o exemplo de planiha contendo os macros acima: <<< Registre-se em nosso Site >>>
Excel vba planilha busca dados linha criterio (29.36 KB)