Adicionado em: | 22/11/2010 |
Modificado em: | 22/11/2010 |
Tamanho: | Vazio |
Downloads: | 630 |
Saberexcel - o site das macros
Esse procedimento do Aplicativo Microsoft Excel VBA, retorna a linha e coluna da célula ativa selecionada, retornando uma mensagem.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim vColuna As String
Dim vIncrementa As Integer
a = ActiveCell.Column
If ActiveCell.Value <> "" Then
Do
vIncrementa = a Mod 26
If vIncrementa = 0 Then vIncrementa = 26
vColuna = Chr(64 + vIncrementa) & vColuna
a = a \ 26
Loop While a > 0
MsgBox ("Você selecionou!" & Chr(13) & "Coluna ......: [" & vColuna & " ]" & _
Chr(13) & "Linha..........: [ " & ActiveCell.Row & " ]" & Chr(13) & _
"Valor..........: [ " & ActiveCell.Value) & " ]" & _
Chr(13) & "Endereço....: [ " & ActiveCell.Address & " ]", vbInformation, "Saberexcel - site das macros"
End If
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA
Publicidade
Compre com segurança, garantia e bons preços nas lojas SubMarino
Adicionado em: | 23/11/2010 |
Modificado em: | 23/11/2010 |
Tamanho: | Vazio |
Downloads: | 2188 |
Saberexcel VBA Estudos®
Esse procedimento do Aplicativo Microsoft Excel VBA agrupa e desagrupa colunas na folha de planilha principal de um livro.
no exemplo também muda o muda o nome(caption) do botão ligado procedimento.
Private Sub Botao1_Click()
If Botao1.Caption = "Desagrupar Colunas" Then
ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=2
ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=3
Botao1.Caption = "Agrupar as Colunas"
Else
ActiveSheet.Outline.ShowLevels RowLevels:=0, ColumnLevels:=1
Botao1.Caption = "Desagrupar Colunas"
End If
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA com SaberExcel
Adicionado em: | 23/11/2010 |
Modificado em: | 23/11/2010 |
Tamanho: | Vazio |
Downloads: | 560 |
Saberexcel - o site das macros
Essa macro do Aplicativo Microsoft Excel VBA, retorna a quantidade de colunas usadas, a próxima coluna em branco, endereço da célula da última coluna usada, e endereço da célula da proxima coluna em branco.
Por exemplo, se voce quiser repetir o exemplo observe na imagem abaixo as linha(1) usada a´te a coluna D
por exemplo se voce seguir o exemplo da imagem acima, terá esse retorno na msgbox.
(MSGBOX) - Colunas - quantidade usadas [ 4 ]
(MSGBOX) - Proxima coluna em branco [5 ]
(MSGBOX) - Endereço celula ultima coluna usada [$D$1 ]
(MSGBOX) - Endereço celula da proxima coluna em branco [$E$1]
Sub Colunas_range_usada_e_nao_usadas_Linha1()
'quantidade de coluna em usada
MsgBox "Colunas - quantidade usadas [ " & _
Range("IV1").End(xlToLeft).Column & " ]", vbCritical, "Quantidade de coluna em usada Lin1"
'proxima coluna em branco
MsgBox "Proxima coluna em branco Lin[1] [ " & _
Range("IV1").End(xlToLeft).Column & " ]", vbInformation, "Proxima coluna em branco Lin1"
'endereço da ultima coluna usada
MsgBox "Endereço da ultima coluna usada Lin1 [" & _
Range("IV1").End(xlToLeft).AddressLocal & " ]", vbExclamation, "Endereço da ultima coluna usada Lin1"
'endereço da proxima coluna em branco
MsgBox "Endereço da proxima coluna em branco Lin1 [" & _
Range("IV1").End(xlToLeft).Offset(0, 1).AddressLocal & " ]", vbExclamation, "Endereço da proxima coluna em branco Lin1"
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA - Saberexcel
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
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