Adicionado em: | 28/03/2012 |
Modificado em: | 28/03/2012 |
Tamanho: | Vazio |
Downloads: | 582 |
Escola Saberexcel VBA Estudos® - o Site de quem precisa aprender sobre Macros MS Excel VBA
Esta macro adiciona(cria) folhas de planilihas com nome dos meses do ano, concatenando com o número do mês, observe que o formato da variável
vMeses esta no formato (mmmm), que retorna o "nome" 'extenso' dos meses.
Abaixo uma macro que deleta todas as folhas de planilhas e preserva somente as folhas de planilha desejadas no livro.
Espero que o exemplo possa lhe ser útil. Fique com Deus, Expedito Marcondes.
' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
Sub sbx_gerar_planilhas_meses()
'- - - - - - - - - - - - -
'http://www.microsoftexcel.com.br
'[email protected]
'- - - - - - - - - - - - -
Dim vContador As Integer
Dim vPlanilha As Worksheet
Dim vMeses As String
' criar um contador com instrução for para repetir um determinado número de vezes
For vContador = 1 To 12
'Adiciona uma Planilha
'instrução set - (referenciar um objeto)
Set vPlanilha = Worksheets.Add(, after:=Worksheets(Worksheets.Count))
'Referenciando o mês do ano atual
vMeses = vContador & " - " & Saber1.Range("A1").Value
'Renomear a planilha que foi adicionada
On Error GoTo SaberErro:
vPlanilha.Name = vMeses & " - " & Format(vMeses, "mmmm")
Set vPlanilha = Nothing 'nothing' dessassocia um objeto de uma variável
Next vContador
Saber1.Select
MsgBox ("Todas as folhas de planilhas foram deletadas" & vbCrLf & _
"Preservando a Folha de Planilha 'Auxiliar' e Produtos_Saberexcel"), vbInformation, "Escola Saberexcel VBA Estudos®"
Exit Sub
SaberErro: ' tratando um erro:
Resposta = MsgBox("Não poderá ser criar planilhas já existentes" & vbCrLf & _
"a menos que você delete as existentes para criar novas, Deseja fazer isso?", vbYesNo, "Escola Saberexcel VBA Estudos®")
If Resposta = 6 Then
Deleta_Planilhas_Exceto_Desejada
sbx_gerar_planilhas_meses
End If
Saber1.Select
End Sub
' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -'
Esse macro é para auxiliar no teste com os macros acima:
'Deleta todas as folhas de planilha e preserva as desejadas.
Sub Deleta_Planilhas_Exceto_Desejada()
For Each nm In Worksheets
Application.DisplayAlerts = False 'impede de emitir a mensagem se deseja excluir
If nm.Name <> "Auxiliar" And nm.Name <> "Produtos_Saberexcel" Then
nm.Delete
End If
Next nm
MsgBox ("Todas as folhas de planilhas foram deletadas" & vbCrLf & _
"Preservando a Folha de Planilha 'Auxiliar' e Produtos_Saberexcel"), vbInformation, "Escola Saberexcel VBA Estudos®"
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.
Adicionado em: | 19/01/2013 |
Modificado em: | 19/01/2013 |
Tamanho: | Vazio |
Downloads: | 389 |
Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções.
Este macro está ligado ao evento change da folha de planilhas, ao selecionar a data na lista suspensa,
retorna automaticamente Msgbox, mensagem data, mês, total de dias no mes, data e hora.
observe que usei a propriedade Offset(Linha, Coluna) para deslocar os dados dentro da tabela.
em nossas vídeos_Aulas "Aprendendo a programar com Simplicidade e Facilidade, Escrevendo menos e Fazendo Mais"
abordamos bem o assunto sobre o tema: Celulas(cells()) e Range(), que achamos primordial no aprendizado com programação MS Excel VBA.
Fique com Deus,
Expedito Marcondes
'- - - - - - - - - - - - - - - - - - - - -'
Sub sbx_dias_total_mes()
Data_inicio = CDate(Plan1.[c2])
Data_Teste = Data_inicio
vNum_Dias = Day(DateSerial(Year(Data_Teste), Month(Data_Teste) + 1, 1) - 1)
MsgBox "Esta data....:[ " & Plan1.Cells(2, "c") & " ]" & vbCrLf & Format(Plan1.Cells(2, "c"), "dddd") & vbCrLf & _
"Este mês ...: [ " & Month(Range("c2")) & " ] contém [ " & (vNum_Dias) & " ] dias", vbInformation, _
"Escola SaberExcel VBA Estudos®"
Range("F65000").End(xlUp).Offset(1, 0) = Plan1.[c2]
Range("F65000").End(xlUp).Offset(0, 2) = Month(Range("c2"))
Range("F65000").End(xlUp).Offset(0, 4) = (vNum_Dias)
Range("F65000").End(xlUp).Offset(0, 6) = Now()
End Sub
'Observe que inserí esse macro no Evento Change (ao escrever na folha de código da folha de Planilha)
então, ao selecionar na lista suspensa uma determinada data, retornará a mensagem e inserirá nas colunas
(Colunas(F,H,J,L) - os mesmos Data, mês da data, total de dias mês, data e hora consulta.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$C$2" And Target.Count = 1 Then
sbx_dias_total_mes
End If
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.
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