Adicionado em: | 23/11/2010 |
Modificado em: | 23/11/2010 |
Tamanho: | Vazio |
Downloads: | 567 |
Saberexcel - o site das macros
Esta macro do Aplicativo Microsoft Excel VBA deleta linha contendo a letra '[x]' na coluna(A), observe que usamos a Instrução Set para referenciarmos a determinada range na folha de planilha neste caso, 'Setamos' a range("A1:A13") como rng, que seria um abreviatura para Range.
mas se tiver alguma dúvida no final da página há um link para baixar o exemplo de planilha com a macro. Espero tê-los ajudado. E_Marcondes.
Sub Deletar_linha_contendo_x()
Dim rng As Range, i As Integer
'Instrução Set decidir qual a variavel para a range(A1:A13) neste caso "rng"
Set rng = Range("A1:A13")
'Loop para contará as linhas existente
'na variavel o que você desejar avaliar.
For i = rng.Rows.Count To 1 Step -1
'Se a célula representada pela var "i" na variavel contiver um "x", eliminará a linha inteira
If rng.Cells(i).Value = "x" Then rng.Cells(i).EntireRow.Delete
Next
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA - SaberExcel
Baixe o exemplo de planilha contendo a macro acima
Publicidade
Compre com segurança, garantia e preços baixos nas lojas SubMarino
promoção de computadores e notebooks
Adicionado em: | 23/11/2010 |
Modificado em: | 23/11/2010 |
Tamanho: | Vazio |
Downloads: | 809 |
Saberexcel - o site das macros
Essas macros e procedimentos do Aplicativo Microsoft Excel VBA, deletam colunas ou linhas [PARES], observem também que inserí um menu personalizado para facilitar o teste do aluno desenvolvedor, se inserissemos algum botão na folha de planilha para o teste
certamente iria deletá-lo com os testes, então fiz o menu personalizado faça os testes através do menu personalizado, baixe o exemplo em um link no final da desta página
Sub Deletar_colunas_Pares()
'Determinar a última linha que contém valores
R = Cells.SpecialCells(xlCellTypeLastCell).Column
'Se a última coluna for ímpar, acrescentar 1 ao seu valor
If R Mod 2 <> 0 Then R = R + 1
'Realizar o loop decrescente de R até o valor 2 com incremento -2
For i = R To 2 Step -2
'Deletar a Coluna
Columns(i).Delete
Next i
End Sub
'Esta macro separa ímpares de pares somente por coluna. Teria como ela remover linha por linha ?
Sub Deletar_Linhas_Pares()
'Determinar a última linha que contém valores
R = Cells.SpecialCells(xlCellTypeLastCell).Row
'Se a última linha for ímpar, acrescentar 1 ao seu valor
If R Mod 2 <> 0 Then R = R + 1
'Realizar o loop decrescente de R até o valor 2 com incremento -2
For i = R To 2 Step -2
'Deletar a linha
Rows(i).Delete
Next i
End Sub
'inserindo um pequeno contador que insere autonumeracão números de 1 a 10
'intenção didática, de como inserir uma autonumeração.
Sub numerando_colunas()
[A1:A10].ClearContents
Range("A1").Select
For i = 1 To 10
ActiveCell.Offset(0, -1 + i ).Value = i
Next
End Sub
'Observe que mudamos a posição da variável "i" para posição row(linha) para autonumeração
'observe que a propriedade OffSet(linha, coluna) - descola linha e colunas.
Sub numerando_linhas()
[A1:L1].ClearContents
Dim s As String
Range("A1").Select
For i = 1 To 10
ActiveCell.Offset(-1 + i, 0).Value = i
Next i
End Sub
Sub dados()
Range("G14").Value = "Acesse o menu personalizado, para realizar os testes"
Range("G15").Value = "Fiz uma macro para montar um menu personalizado, "
Range("G16").Value = "pois irá deletar linhas e colunas."
Range("G17").Value = "com isso deletará dados na planilha"
Range("G13").Select
End Sub
EM OUTRO MÓDULO DE PROGRAMAÇÃO VOCE PODERÁ INSERIR OS PROCEDIMENTOS PARA O MENU PERSONALIZADO
Public Const CMDBARNOME = "LISTA MENU E CMDBAR"
Sub menu()
Dim cmdBar As CommandBar
Dim menu As CommandBarPopup
Dim btn As CommandBarButton
Call menuDel
Set cmdBar = CommandBars.Add(Name:=CMDBARNOME, Position:=msoBarFloating)
cmdBar.Width = 180
'.......'
Set menu = cmdBar.Controls.Add(Type:=msoControlPopup)
With menu
.Caption = "Deletando Linhas e Colunas"
.Width = 90
End With
'.......'
Set btn = menu.Controls.Add(Type:=msoControlButton)
With btn
.Caption = "Deletar Coluna Pares"
.OnAction = "Deletar_colunas_Pares"
End With
'.......'
Set btn = menu.Controls.Add(Type:=msoControlButton)
With btn
.Caption = "Deletar Colunas Pares"
.OnAction = "Deletar_Linhas_Pares"
End With
'.......'
Set menu = cmdBar.Controls.Add(Type:=msoControlPopup)
With menu
.Caption = "Numeros linhas e colunas"
.Width = 90
End With
'.......'
Set btn = menu.Controls.Add(Type:=msoControlButton)
With btn
.Caption = "Numerando Colunas"
.OnAction = "numerando_colunas"
.FaceId = 654
End With
'.......'
Set btn = menu.Controls.Add(Type:=msoControlButton)
With btn
.Caption = "Numerando Linhas"
.BeginGroup = True
.OnAction = "numerando_linhas"
.FaceId = 1044
End With
'.......'
With cmdBar
.Visible = True
.Protection = msoBarNoChangeDock + msoBarNoCustomize + msoBarNoResize
End With
End Sub
Sub menuDel()
On Error Resume Next
CommandBars(CMDBARNOME).Delete
End Sub
NO MODULO DE PROGRAMAÇÃO VBE DO WORKBOOK INSIRA OS SEGUINTES PROCEDIMENTOS
Private Sub Workbook_Open()
'Expedito Marcondes
'Site.....: http://www.saberexcel.com
'Email...: [email protected]
Call mnu
End Sub
'...........................'
Private Sub Workbook_BeforeClose(Cancel As Boolean)
menuDel
ThisWorkbook.Save
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA com Saberexcel
Compre com qualidade, segurança tudo que possa imaginar nas lojas Submarino
Adicionado em: | 06/02/2011 |
Modificado em: | 06/02/2011 |
Tamanho: | Vazio |
Downloads: | 1544 |
Saberexcel - o site das macros
Esta macro do Aplicativo Microsoft Excel VBA(Visual Basic Application), insere linhas vazias abaixo veriicando valores da célula ativa,
observe que o Loop entra em determinada célula, memoriza o valor, insere o valor em linhas vazias, por exemplo se o valor da célula
ativa for 5 o macro inserirá cinco linhas e assim por diante. Baixe o exemplo de planilha no final da página.
'R.: Silvia, é possível sim, voce que o macro insira um determinado número
'de linhas em branco baseada no valor da célula ativa.
'1, insere uma linha abaixo, 2 duas linhas, 3 tres linhas, 7 sete linhas....
'A macro que voce deverá usar é assim veja.
Sub Inserir_numero_linhas_valor_celula_anterior()
Dim I As Double, J As Integer
'[:] na frente do código significa - como se fosse linha debaixo (próxima linha).
If [a].Value = "" Then MsgBox "copie os números para teste botão copiar...", vbInformation, "Saberexcel": Exit Sub
For I = Range("A" & Rows.Count).End(xlUp).Row To 1 Step -1
For J = 1 To Range("A" & I)
Rows(I + 1).Insert shift:=xlDown
Next J
Next I
[C4].Value = "Observe que foi inserido o número de Linhas vazias correspondente ao valor que está na célula"
End Sub
Sub copiar_teste()
limpar_teste
[b].Copy [a]
[C4].Value = ""
End Sub
Sub limpar_teste()
[g,C4].Clear
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application),sozinho, com baixo custo, praticando com os produtos didáticos SaberExcel
Adicionado em: | 25/11/2010 |
Modificado em: | 25/11/2010 |
Tamanho: | Vazio |
Downloads: | 961 |
SaberExcel - o site das Macros
Esta macro do Aplicativo Microsoft Excel VBA, localiza a linha da última célula usada, e retrona uma msgbox,
na coluna A a partir da celula A1.
Excel VBA Estudos® >> www.saberexcel.com >> Escola de Informática
Sub Ultima_linha_celula()
Dim vlCelBusca As Long
On Error Resume Next
'Essas linhas comentadas abaixo você poderá usar como um ["Verfica Inconsistência"] se tal célula estiver vazia msgbox e sai da macro.
'If Sheets("Plan2").Cells(1, 1) = "" Then
' MsgBox ("É so digitar algo na Coluna A, Blz!"), vbInformation, "Saberexcel.com"
' Encontrar a última linha, que forneceu um texto ou valor.
' faz a busca aqui...
' Exit Sub
'Else
vlCelBusca = Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
MsgBox "A Linha ULTIMA CELULA usada esta na linha é : " & vlCelBusca, vbInformation, "Saberexcel.com"
Sheets("Plan2").Cells(2, 3) = "A Linha ULTIMA CELULA usada esta na linha : - " & vlCelBusca
'End If
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA - SaberExcel
Adicionado em: | 25/11/2010 |
Modificado em: | 25/11/2010 |
Tamanho: | Vazio |
Downloads: | 632 |
Saberexcel_site_das_macros
Esse procedimento do Aplicativo Microsoft Excel VBA, retorna a linha e coluna da célula selecionada, observe que aqui usamos o evento Selection Change, isso é, o evento ocorre ao selecionar determinada célula.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim vColuna As String, vLinha As Long, i As Integer
vColuna = Replace(Target.Address, "$", "") 'guarda o simbolo $
For i = 0 To 9
vColuna = Replace(vColuna, i, "") ' guarda os números
Next i
vLinha = Target.Row
MsgBox ("Você Selecionou :" & Chr(13) & "Coluna.....: " & vColuna & Chr(13) & "Linha.......: " & _
vLinha & Chr(13) & "Celula......: " & Target.Address & Chr(13) & "Valor......: " & Target.Value), _
vbInformation, "Saberexcel - site das macros"
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA com SaberExcel
Publicidade:
Compre com segurança, qualidade e ótimos preços nas lojas SubMarino
Adquira já o Acesso Imediato
à Area de Membros
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
<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>
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