Get Adobe Flash player

Perfil MVP

perfil mvp

Autenticação

Online

Nenhum

Estatísticas

mod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_counter
mod_vvisit_counterHoje21
mod_vvisit_counterOntem197
mod_vvisit_counterEsta semana1675
mod_vvisit_counterEste Mês4090
mod_vvisit_counterTodas499542

Ligados 15
O seu IP: 38.107.179.230
,
Agora: 2012-05-20 00:47
Avaliação: / 0
FracoBom 

A propósito do último post sobre criar um ficheiro em formato PDF, surgiu a seguinte questão, que necessitava ser resolvida: 

 

O nome do ficheiro a criar deveria conter a data do dia anterior, mas, se o backup fosse efectuado entre as 00:01 e as 05:00, deveria conter, não a data do dia anterior, mas a data de dois dias antes.

 

Então, para a sua resolução, foi adicionada a seguinte peça de código:

 

 

Private Sub Workbook_BeforeClose(Cancel As Boolean)

 

    Dim SvInput As String   

 

    If Time > TimeValue("00:01:00") And Time < TimeValue("05:00:00") Then 

SvInput = "D:\Excel\Testes\PROGR_PR" & "_" & Date - 2 & ".pdf"

    Else

SvInput = "D:\Excel\Testes\PROGR_PR" & "_" & Date - 1 & ".pdf"

    End If 

 

        With ActiveSheet

        .ExportAsFixedFormat _

                Type:=xlTypePDF, _

                Filename:=SvInput, _

                OpenAfterPublish:=True

        End With

 

End Sub

 

 

Por outro lado, a tabela deveria conter numa das suas células (C3), uma data exactamente com o mesmo critério.

 

Para tal, foi construída a seguinte fórmula, fórmula essa que apontava para a célula AP1, que apenas continha a Função AGORA():

 

=SE(E(RESTO(AP1;1)>VALOR.TEMPO("00:01");RESTO(AP1;1)<VALOR.TEMPO("05:00"));HOJE()-2;HOJE()-1)

 

O resultado foi o esperado!

 

.