• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

mpeixoto

[VB6] Funções Data [Resolvido]

5 mensagens neste tópico

Preciso de escrever a data por extenso numa string mas não sei como separar ou pegar nos valores da função date.

A função DATE retorna-me: "20-04-2007", e eu preciso de: "20 de Abril de 2007".

A string:

data=* & " de " & " mes " & " de " & **

* = uma função que me retorne o dia do mês

**= uma função que me retorne o ano

Depois preciso de uma função que me retorne um número correspondente ao mês para fazer um select case e afectar a variavel "mes".

Se alguem souber, obrigado!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

depende se o sistema que instalares (win) for em inglês o exemplo do NuGun , dá-te a data em inglês. ( por isso Vê como e onde instalas o que tens a fazer)

em minha opiniao podes fazer é referenciares todas as variaveis

ex:

Private Type SYSTEMTIME

    wYear As Integer

    wMonth As Integer

    wDayOfWeek As Integer

    wDay As Integer

    wHour As Integer

    wMinute As Integer

    wSecond As Integer

    wMilliseconds As Integer

End Type

Private Declare Function SetSystemTime Lib "kernel32" _

(lpSystemTime As SYSTEMTIME) As Long

Private Sub Form_Load()

Dim Data, Dia, Mes, Ano, DiaSemana As Variant

    'Mostra Data

    Dia = Day(Data)

    Mes = Format(Data, "M")

    Ano = Year(Data)

    DiaSemana = Weekday(Data)

   

    Label5.Caption = DataExtenso(Date)

    'Mostra Tempo

    Label4.Caption = Hour(Time) & " h : " & Minute(Time) & " m"

end sub

' ====================================

' = No módulo : VSoft,Lda. ( Data por Extenso) =

' ====================================

Function DataExtenso(Data As Variant) As String

    Dim Dia, Mes, Ano, DiaSemana As Variant

    Dim NomeSemana, NomeMes, NomeAno As String

   

    Dia = Day(Data)

    Mes = Format(Data, "M")

    Ano = Year(Data)

    DiaSemana = Weekday(Data)

   

    'Converte o Nome da Semana

    Select Case DiaSemana

    Case 1

        NomeSemana = "Domingo"

    Case 2

        NomeSemana = "Segunda - feira"

    Case 3

        NomeSemana = "Terça - feira"

    Case 4

        NomeSemana = "Quarta - feira"

    Case 5

        NomeSemana = "Quinta - feira"

    Case 6

        NomeSemana = "Sexta - feira"

    Case 7

        NomeSemana = "Sábado"

    End Select

    'Converte o nome Do mês

    Select Case Mes

    Case 1

        NomeMes = "Janeiro"

    Case 2

        NomeMes = "Fevereiro"

    Case 3

        NomeMes = "Março"

    Case 4

        NomeMes = "Abril"

    Case 5

        NomeMes = "Maio"

    Case 6

        NomeMes = "Junho"

    Case 7

        NomeMes = "Julho"

    Case 8

        NomeMes = "Agosto"

    Case 9

        NomeMes = "Setembro"

    Case 10

        NomeMes = "Outubro"

    Case 11

        NomeMes = "Novemnbro"

    Case 12

        NomeMes = "Dezembro"

    End Select

    'Monta a data em extenso

    DataExtenso = NomeSemana & ", " & Dia & " de " & NomeMes & " de " & Ano

End Function

espero ter-te ajudado.

cump.

programadorvb6

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O do colega nungun tb serve , é + facil ainda.. mas contudo se apanhares por ex 1 windows que seja em ver. Inglesa dá-te a data em inglês.

cump.

programadorvb6

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Obrigado aos dois!

O exemplo da Msgbox realmente é mais simples mas como interessa-me por a data numa label usei o exemplo do programadorvb6 que sendo um pouco extenso o código está simples e é facil de interpretar.

obrigado e cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora