KU
vb

Duvida

Por Kuro o Shiniga, 10 de out. de 2013 em Resolvidos

9
2.2k
Kuro o ShinigaK
10 de outubro de 2013 às 19:06

Ola galera, não sei se estou na area correta se eu não estiver desculpem!

 

Então eu tenho um programa em VB, e um sistema de venda e todo dia 10 o programa gera o boleto para os clientes, só que tem cliente que não pode pagar dia 10 alguns pagam dia 15 outros dia 12 e assim vai ...

 

Queria saber se alguém sabe de alguma forma de alterar as data de vencimento dos clientes de uma vez! aguardo respostas!

Editado Outubro 10 por Pinpao

KempaichiK
10 de outubro de 2013 às 19:15

Ola,

sua dúvida ta na área certa, mas seria mais fácil para o pessoal te ajudar se você posta-se o script do seu programa.

 

Att,

Kuro o ShinigaK
11 de outubro de 2013 às 09:00

Ola, então a função creio eu ser simples eu quero apenas uma função que retire os dias de uma data digita exemplo

 

Vai ter um campo para eu digitar uma data exemplo 11/10/2013 ai quero que retire apenas dos dias retire todos os dias ai a data volta para 30/09/2013

caoticC
11 de outubro de 2013 às 11:30

eaheuh'

eu ainda não entedi.

 

Pelo que eu vi você quer voltar para o ultimo mes e isto e bem facil.

Editado Outubro 11 por caotic

Kuro o ShinigaK
11 de outubro de 2013 às 12:32

Isso mesmo! Tipo hoje é 11/10/2013 quero que retire os 11 dias e volte para 30/09/2013

Editado Outubro 11 por Pinpao

caoticC
11 de outubro de 2013 às 14:11

Ou melhor....

fazer assim

Function toDat(ByVal x As String)
        Dim y As String
        y = x
        If Val(x) < 10 Then
 
            y = "0" + y.ToString
 
        End If
 
        Return y
    End Function
 
    Function retireDatDays(ByVal dat As String)
        Dim x As String
        Dim a As String
        Dim days As String = Microsoft.VisualBasic.Left(dat, 2)
        Dim maxdays As String = DateTime.DaysInMonth(Microsoft.VisualBasic.Right(dat, 4), Microsoft.VisualBasic.Left(Microsoft.VisualBasic.Right(dat, 7), 2))
        If Val(days) < Val(maxdays) Then
            a = Val(Microsoft.VisualBasic.Right(dat, 4))
            Dim m As String = Microsoft.VisualBasic.Left(Microsoft.VisualBasic.Right(dat, 7), 2)
            If Val(m) = 1 Then
                a = Val(Microsoft.VisualBasic.Right(dat, 4)) - 1
                x = "12"
            Else
                x = Val(m) - 1
            End If
            Return DateTime.DaysInMonth(a, x).ToString + "/" + toDat(x.ToString()) + "/" + a.ToString()
        End If
 
        Return dat
    End Function

Pronto e so usar a função retireDatDays e pronto e ele va tirar o dias do mês corretamente.

Editado Outubro 11 por caotic

Kuro o ShinigaK
11 de outubro de 2013 às 15:09

Mas eu já resolvi kkk é que aqui eu trabalho com GAS, e consegui fazer uma forma bem menor

DateAdd("D", - Day(Data), Data)

Mesmo assim obrigado por ter tentando ajudar ! :]

1 ano depois...
FurabioF
08 de abril de 2015 às 14:17

Movido para a área correta.

5 meses depois...
LumusL
18 de setembro de 2015 às 02:11

Tópico Movido
Este tópico foi movido de "OFF-TopicLinguagens de ProgramaçãoSuporte Linguagens"
para "OFF-TopicLinguagens de ProgramaçãoSuporte LinguagensDúvidas Resolvidas - Suporte Linguagens".