Excel VBA - Datas

  • - Acesso Livre
  • Documentos

    Ordenar por : Nome | Data | Acessos [ Ascendente ]

    Excel planilha vba retorna dia total mes datas Excel planilha vba retorna dia total mes datas

    popular!
    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

    'O
    bserve 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.




    Excel vba planilha adiciona planilha meses e ano Excel vba planilha adiciona planilha meses e ano

    popular!
    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

    E
    sta 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.



    Excel planiha vba datadif personalizada Excel planiha vba datadif personalizada

    popular!
    Adicionado em: 11/11/2011
    Modificado em: 11/11/2011
    Tamanho: Vazio
    Downloads: 1439

    Saberexcel - o site de quem precisa aprender macros MS Excel VBA

    Função personalizada "Decorrido" do aplicativo Microsoft Excel VBA, retorna a diferença de datas em duas determinadas datas, essa função é igual a função DATADIF, que retorna também a diferença de datas, Anos, meses, dias.
    Baixe o exemplo de planilha no final da página. Espero que o exemplo possam ajudá-los, Fiquem com Deus. Expedito Marcondes.

    Function Decorrido(DataInicial As Date, DataFinal As Date, TipoRetorno As Integer)
    Dim AnoInicial As Integer
    Dim AnoFinal As Integer
    Dim MesInicial As Integer
    Dim MesFinal As Integer
    Dim DiaInicial As Integer
    Dim DiaFinal As Integer

    AnoInicial = Year(DataInicial)
    MesInicial = Month(DataInicial)
    DiaInicial = Day(DataInicial)
    AnoFinal = Year(DataFinal)
    MesFinal = Month(DataFinal)
    DiaFinal = Day(DataFinal)

    If DiaFinal < DiaInicial Then
    DiaFinal = DiaFinal + (DateSerial(AnoFinal, MesFinal + 1, DiaFinal) - DateSerial(AnoFinal, MesFinal, DiaFinal))
    MesFinal = MesFinal - 1
    End If

    If MesFinal < MesInicial Then
    MesFinal = MesFinal + 12
    AnoFinal = AnoFinal - 1
    End If

    Select Case TipoRetorno
    Case 1 '\ retorna Ano
    Decorrido = AnoFinal - AnoInicial
    Case 2 '\ retorna o mês
    Decorrido = MesFinal - MesInicial
    Case 3 '\ retorna dia
    Decorrido = DiaFinal - DiaInicial

    End Select


    End Function
    USO DAS FUNÇÕES:
    =decorrido($F6;$G$1;1) ' argumento (1) retorna Anos.
    =decorrido($F6;$G$1;2) ' argumento(2) retorna Meses
    =decorrido($F6;$G$1;3) ' argumento(3) retorna dias

    CONCATENANDO DADOS USANDO A FUNÇÃO PERSONALIZADA 'decorrido"
    ="O Sr." &B5&" nascido dia [ "&TEXTO(D5;"dd/mmm/aaaa")&" ] Tem [ "&decorrido($D5;$E$1;1) & " ] Anos, "& decorrido($D5;$E$1;2) & " mese="O Sr." &B5&" nascido dia [ "&TEXTO(D5;"dd/mmm/aaaa")&" ] Tem [ "&decorrido($D5;$E$1;1) & " ] Anos, "& decorrido($D5;$E$1;2) & " meses e "&decorrido($D5;$E$1;3) & " dias"s e "&decorrido($D5;$E$1;3) & " dias"

    ' - - - - - - - - - - - - -- -- - - - - - - - - - - - - -
    USO DA FUNÇÃO DATADIF - APLICATIVO EXCEL
    =DATADIF($F6;$G$1;"y") 'Argumento("y") retorna anos
    =DATADIF($F6;$G$1;"ym") ' Argumento("ym") retorna meses
    =DATADIF($F6;$G$1;"md") 'Argumento("md") retorna dias

    CONCATENANDO DADOS USANDO A FUNÇÃO DO APLICATIVO EXCEL 'DATADIF'
    ="O Sr."&B5&" nascido dia [ "&TEXTO(D10;"dd/mmm/aaaa")&" ] Tem [ "&DATADIF($D5;$E$1;"y")&" ] Anos, "&DATADIF($D5;$E$1;"ym")&" meses e "&DATADIF($D5;$E$1;"md")&" dias"




    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.



    Excel planilha vba retorna horas e saudacao Excel planilha vba retorna horas e saudacao

    popular!
    Adicionado em: 14/10/2011
    Modificado em: 14/10/2011
    Tamanho: Vazio
    Downloads: 596

    Saberexcel - o site de quem precisa aprender macros Microsoft Excel VBA

    Esse macro do Aplicativo Microsoft Excel VBA, retorna mensagem data e horas.
    Escola Saberexcel VBA Estudos® - Treinamento com Macros, Fórmulas e Funções.
    http://www.microsoftexcel.com.br - http://www.saberexcel.com.br
    '-----------------------------------------'
    Sub Retorna_data_hora_minuto_segundo()
    DataAtual = Month(Date)
    NomeMes = MonthName(DataAtual, False)

    vMensagem = "Ano atual:[ " & Year(Date) & " ] " & Chr(13)
    vMensagem = vMensagem & "Mês atual :[ " & NomeMes & " ] " & Chr(13)
    vMensagem = vMensagem & "Hoje é dia :[ " & Day(Date) & " ] " & Chr(13)
    vMensagem = vMensagem & Chr(13) & "*-*-*-*-*-*-*-*--*-*-*-*-*" & Chr(13) & Chr(13)

    HoraAtual = Hour(Time())
    MinutoAtual = Minute(Time())
    SegundoAtual = Second(Time())

    vMensagem = vMensagem & "Hora atual: " & " [ " & HoraAtual & " ] " & Chr(13)
    vMensagem = vMensagem & "Minuto atual: " & " [ " & MinutoAtual & " ] " & Chr(13)
    vMensagem = vMensagem & "Segundo atual: " & " [ " & SegundoAtual & " ] " & Chr(13)
    vMensagem = vMensagem & Chr(13) & "*-*-*-*-*-*-*-*--*-*-*-*-*" & Chr(13) & Chr(13)
    vMensagem = vMensagem & Chr(13) & "Aprenda Microsoft Excel VBA com Saberexcel" & Chr(13) & Chr(13)
    MsgBox vMensagem, vbInformation, "Saberexcel - o site das macros"

    End Sub
    '-----------------------------------------'
    'Esse macro retorna uma mensagem de saudação
    Sub saudacao_mensagem()
    If Time$ > "18:00:00" Then
    MsgBox "Boa noite, durma bem", _
    vbInformation, "Saberexcel - o Site das Macros"
    ElseIf Time$ > "12:00:00" Then
    MsgBox "Boa tarde!", _
    vbInformation, "Saberexcel - o Site das Macros"
    ElseIf Time$ > "00:00:00" Then
    MsgBox "Bom dia, com muita alegria!", _
    vbInformation, "Saberexcel - o Site das Macros"
    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.
    http://www.micrososftexcel.com.br
    '


    Exc

    Excel planilha vba data transforma formato texto data Excel planilha vba data transforma formato texto data

    popular!
    Adicionado em: 07/10/2011
    Modificado em: 07/10/2011
    Tamanho: Vazio
    Downloads: 875

    Saberexcel - o site das macros

    Esse procedimento do Aplicativo Microsoft Excel VBA, inserido na folha de planilha e sensizilizado pelo Evento SelectionChange, ao selecionar  copia determinados números com caracteres inválidos para datas, e os transforma em datas válidas, com barras.

    '------------'
    15%07&2012 - será transformado em 15/07/2012
    17(07*2012 - será transformado em 15/07/2012
    19.12.2012 - será transformado em 19/12/2012
    25$07#2012 - será transformado em 25/07/2012
    18!08*2012 - será transformado em 18/08/2012
    26"12£2012 - será transformado em 26/12/2012
    31%12§2012 - será transformado em 31/12/2012


    Private Sub Worksheet_SelectionChange
    (ByVal Target As Range)
    On Error Resume Next
    Saber1.[A1].Value = ActiveCell.Offset(0, -2).Value
    Data_Formato_dia_mes_ano
    End Sub

    'transformando um data formato texto (07.03.2012) no formato (07/03/2012)

    Sub Data_Formato_dia_mes_ano()
    Dim Ano As Integer, Mes As Integer, dia As Integer
    Ano = Right(Range("A1"), 4)
    Mes = Mid(Range("A1"), 4, 2)
    dia = Left(Range("A1"), 2)
    Range("A2") = DateSerial(Ano, Mes, dia)
    End Sub

    Escola Saberexcel VBA Estudos - Treinamentos, Macros, Fórmulas e funções http://www.microsoftexcel.com.br


    Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel




     

    Página 1 de 4

    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