Como determinar se uma data cair em um final de semana ou no feriado no Access 2002

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 290152
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Moderado: Requer básica de macro, codificação e interoperabilidade habilidades.

Este artigo se aplica somente a um banco de dados do Microsoft Access (.mdb).

Para uma versão deste artigo do Microsoft Access 97, consulte 149127.
Para uma versão deste artigo do Microsoft Access 2000, consulte 210064.

NESTA TAREFA

Sumário
Este artigo mostra como criar um Visual Basic for Applications função para determinar se uma data cai em um final de semana ou feriados. Este exemplo é útil para definir o vencimento datas em aplicativos que têm recursos de cobrança ou faturamento.

Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não está limitado a, garantias implícitas de comercialização ou adequação para uma finalidade específica. Este artigo presume que você está familiarizados com a linguagem de programação que está sendo demonstrada e com as ferramentas que são usadas para criar e depurar procedimentos. Engenheiros de suporte podem ajudar a explicar a funcionalidade de um determinado procedimento, mas eles não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender às suas necessidades. O exemplo a seguir usa a função () de WeekDay para determinar se uma data específica cair em um sábado ou um domingo. Em seguida, ele usa a DPesquisa () para determinar se a data cair em uma data que é armazenada em uma tabela de feriados criadas pelo usuário.

back to the top

Criar a tabela de feriados

O exemplo a seguir exige uma tabela com uma estrutura específica para armazenar datas de feriado. Para criar os registros de tabela e exemplo, execute essas etapas:
  1. Criar uma nova tabela no modo de design e adicione os seguintes campos:
       Table: Holidays   -----------------------   Field Name: Description     Data Type: Text   Field Name: HoliDate     Date Type: Date/Time					
  2. Salvar a tabela como feriados e alterne a tabela para o modo folha de dados. Adicionar os seguintes registros:
       Description                         HoliDate   --------------------------------------------   New Year's Day                      1/1/2000   Martin Luther King, Jr. Day (USA)   1/15/2000   Memorial Day (observed-USA)         5/29/2000   Labor Day (USA)                     9/4/2000					
  3. Feche e salve a tabela de feriados.
back to the top

Criar a função personalizada

Para criar uma função que determina se uma data cai em um final de semana ou feriados, siga estas etapas:
  1. Crie um novo módulo no modo Design.
  2. Adicione a seguinte função:
    Function OfficeClosed(TheDate) As Integer      OfficeClosed = False   ' Test for Saturday or Sunday.   If WeekDay(TheDate) = 1 Or WeekDay(TheDate) = 7 Then       OfficeClosed = True   ' Test for Holiday.   ElseIf Not IsNull(DLookup("HoliDate", "Holidays", "[HoliDate]=#" _     & TheDate & "#")) Then       OfficeClosed = True   End IfEnd Function					
  3. Para testar essa função, digite a seguinte linha na janela Verificação imediata e, em seguida, pressione ENTER:
    ? OfficeClosed(#9/4/2000#)					
    Observe que isso retorna um valor True (-1) porque 9/4/2000 está listado na tabela de feriados.
back to the top

Exemplo de uso

Você pode usar a função OfficeClosed() personalizada para calcular datas de vencimento. Por exemplo, se sua empresa ou empresa estiver fechada para uma semana de três dias, você pode deseja estender o período de cortesia seus clientes para suas listas pendentes. Este é o código de exemplo para adicionar um dia mais a um período de cortesia:
DueDate=OrderDate+30Do While OfficeClosed(DueDate)   DueDate=DateDue+1Loop				

back to the top


Referências
Para obter mais informações sobre a função Weekday(), no Editor do Visual Basic, clique em Ajuda do Microsoft Visual Basic no menu Ajuda , digite função weekday no Assistente do Office ou no Assistente de resposta e, em seguida, clique em Pesquisar para exibir o tópico.

Para obter informações adicionais sobre a função DLookup(), clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
285866Descrição do uso DLookup(), exemplos e solução de problemas


back to the top
Semana de inf OfficeKBHowTo end saturdays sundays dias verificar qual calcular calcular determinado especificado se

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 290152 - Última Revisão: 12/06/2015 00:45:43 - Revisão: 3.2

Microsoft Access 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbdta kbhowtomaster KB290152 KbMtpt
Comentários