MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    Converter em minutos, diferença entre datas sem feriados

    avatar
    Jose Alípio
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 1
    Registrado : 29/05/2015

    Converter em minutos, diferença entre datas sem feriados Empty Converter em minutos, diferença entre datas sem feriados

    Mensagem  Jose Alípio 29/5/2015, 14:51

    Boa tarde, preciso da vossa preciosa ajuda.
    Há uns tempos (2012) o Alexandre Neves ajudou o André Lindolfo com o código abaixo indicado. Calcula a diferença entre datas excluindo feriados e fins de semana.
    Depois de ser adaptado, ficou a calcular a diferença em dias entre datas excluindo fins de semana, feriados nacionais e municipais em Portugal.
    Preciso de ajuda uma vez que pretendo que o resultado seja em hora/minutos e não em dias, algum ajuda por favor?
    a formatação dos campos de data inicial e final é dd-mm-yyyy hh:mm:ss
    (Access 2010)

    Option Compare Database
    Option Explicit

    ' 'criada por Alexandre Neves
    ' 'www.esnips.com\web\AlexandreNeves
    ' 'adaptado para Portugal em 05/2015

    Enum NomeEstado
    ABRANTES = 1
    AGUEDA = 2
    AGUIAR_DA_BEIRA = 3
    ALANDROAL = 4
    ALBERGARIA_A_VELHA = 5
    ALBUFEIRA = 6
    ALCACER_DO_SAL = 7
    ALCANENA = 8
    ALCOBACA = 9
    ALCOCHETE = 10
    ALCOUTIM = 11
    ALENQUER = 12
    ALFANDEGA_DA_FE = 13
    ALIJO = 14
    ALJEZUR = 15
    ALJUSTREL = 16
    ALMADA = 17
    ALMEIDA = 18
    ALMEIRIM = 19
    ALMODOVAR = 20
    ALPIARCA = 21
    ALTER_DO_CHAO = 22
    ALVAIAZERE = 23
    ALVITO = 24
    AMADORA = 25
    AMARANTE = 26
    AMARES = 27
    ANADIA = 28
    ANGRA_DO_HEROISMO = 29
    ANSIAO = 30
    ARCOS_DE_VALDEVEZ = 31
    ARGANIL = 32
    ARMAMAR = 33
    AROUCA = 34
    ARRAIOLOS = 35
    ARRONCHES = 36
    ARRUDA_DOS_VINHOS = 37
    AVEIRO = 38
    AVIS = 39
    AZAMBUJA = 40
    BAIAO = 41
    BARCELOS = 42
    BARRANCOS = 43
    BARREIRO = 44
    BATALHA = 45
    BEJA = 46
    BELMONTE = 47
    BENAVENTE = 48
    BOMBARRAL = 49
    BORBA = 50
    BOTICAS = 51
    BRAGA = 52
    BRAGANCA = 53
    CABECEIRAS_DE_BASTO = 54
    CADAVAL = 55
    CALDAS_DA_RAINHA = 56
    CALHETA = 57
    CAMARA_DE_LOBOS = 58
    CAMINHA = 59
    CAMPO_MAIOR = 60
    CANTANHEDE = 61
    CARRAZEDA_DE_ANSIAES = 62
    CARREGAL_DO_SAL = 63
    CARTAXO = 64
    CASCAIS = 65
    CASTANHEIRA_DE_PERA = 66
    CASTELO_BRANCO = 67
    CASTELO_DE_PAIVA = 68
    CASTELO_DE_VIDE = 69
    CASTRO_D_AIRE = 70
    CASTRO_MARIM = 71
    CASTRO_VERDE = 72
    CELORICO_DA_BEIRA = 73
    CELORICO_DE_BASTO = 74
    CHAMUSCA = 75
    CHAVES = 76
    CINFAES = 77
    COIMBRA = 78
    CONDEIXA_A_NOVA = 79
    CONSTANCIA = 80
    CORUCHE = 81
    CORVO = 82
    COVILHA = 83
    CRATO = 84
    CUBA = 85
    ELVAS = 86
    ENTRONCAMENTO = 87
    ESPINHO = 88
    ESPOSENDE = 89
    ESTARREJA = 90
    ESTREMOZ = 91
    EVORA = 92
    FAFE = 93
    FARO = 94
    FEIRA = 95
    FELGUEIRAS = 96
    FERREIRA_DO_ALENTEJO = 97
    FERREIRA_DO_ZEZERE = 98
    FIG_CASTELO_RODRIGO = 99
    FIGUEIRA_DA_FOZ = 100
    FIGUEIRO_DOS_VINHOS = 101
    FORNOS_DE_ALGODRES = 102
    FREIXO_ESPADA_CINTA = 103
    FRONTEIRA = 104
    FUNCHAL = 105
    FUNDAO = 106
    GAVIAO = 107
    GOIS = 108
    GOLEGA = 109
    GONDOMAR = 110
    GOUVEIA = 111
    GRANDOLA = 112
    GUARDA = 113
    GUIMARAES = 114
    HORTA = 115
    IDANHA_A_NOVA = 116
    ILHAVO = 117
    LAGOA = 118
    LAGOA___SAO_MIGUEL = 119
    LAGOS = 120
    LAJES_DAS_FLORES = 121
    LAJES_DO_PICO = 122
    LAMEGO = 123
    LEIRIA = 124
    LISBOA = 125
    LOULE = 126
    LOURES = 127
    LOURINHA = 128
    LOUSA = 129
    LOUSADA = 130
    MACAO = 131
    MACEDO_DE_CAVALEIROS = 132
    MACHICO = 133
    MADALENA = 134
    MAFRA = 135
    MAIA = 136
    MANGUALDE = 137
    MANTEIGAS = 138
    MARCO_DE_CANAVESES = 139
    MARINHA_GRANDE = 140
    MARVAO = 141
    MATOSINHOS = 142
    MEALHADA = 143
    MEDA = 144
    MELGACO = 145
    MERTOLA = 146
    MESAO_FRIO = 147
    MIRA = 148
    MIRANDA_DO_CORVO = 149
    MIRANDA_DO_DOURO = 150
    MIRANDELA = 151
    MOGADOURO = 152
    MOIMENTA_DA_BEIRA = 153
    MOITA = 154
    MONCAO = 155
    MONCHIQUE = 156
    MONDIM_DE_BASTO = 157
    MONFORTE = 158
    MONTALEGRE = 159
    MONTEMOR_O_NOVO = 160
    MONTEMOR_O_VELHO = 161
    MONTIJO = 162
    MORA = 163
    MORTAGUA = 164
    MOURA = 165
    MOURAO = 166
    MURCA = 167
    MURTOSA = 168
    NAZARE = 169
    NELAS = 170
    NISA = 171
    NORDESTE = 172
    OBIDOS = 173
    ODEMIRA = 174
    ODIVELAS = 175
    OEIRAS = 176
    OLEIROS = 177
    OLHAO = 178
    OLIVEIRA_DE_AZEMEIS = 179
    OLIVEIRA_DE_FRADES = 180
    OLIVEIRA_DO_BAIRRO = 181
    OLIVEIRA_DO_HOSPITAL = 182
    OURIQUE = 183
    OVAR = 184
    PACOS_DE_FERREIRA = 185
    PALMELA = 186
    PAMPILHOSA_DA_SERRA = 187
    PAREDES = 188
    PAREDES_DE_COURA = 189
    PEDROGAO_GRANDE = 190
    PENACOVA = 191
    PENAFIEL = 192
    PENALVA_DO_CASTELO = 193
    PENAMACOR = 194
    PENEDONO = 195
    PENELA = 196
    PENICHE = 197
    PESO_DA_REGUA = 198
    PINHEL = 199
    POMBAL = 200
    PONTA_DELGADA = 201
    PONTA_DO_SOL = 202
    PONTE_DA_BARCA = 203
    PONTE_DE_LIMA = 204
    PONTE_DE_SOR = 205
    PORTALEGRE = 206
    PORTEL = 207
    PORTIMAO = 208
    PORTO = 209
    PORTO_DE_MOS = 210
    PORTO_MONIZ = 211
    PORTO_SANTO = 212
    POVOA_DE_LANHOSO = 213
    POVOA_DE_VARZIM = 214
    POVOACAO = 215
    PROENCA_A_NOVA = 216
    REDONDO = 217
    REGUENGOS_MONSARAZ = 218
    RESENDE = 219
    RIBEIRA_BRAVA = 220
    RIBEIRA_DE_PENA = 221
    RIBEIRA_GRANDE = 222
    RIO_MAIOR = 223
    S_JOAO_DA_MADEIRA = 224
    S_JOAO_DA_PESQUEIRA = 225
    S_PEDRO_DO_SUL = 226
    SBRAS_DE_ALPORTEL = 227
    SABROSA = 228
    SABUGAL = 229
    SALVATERRA_DE_MAGOS = 230
    SANTA_COMBA_DAO = 231
    SANTA_CRUZ = 232
    SANTA_CRUZ_FLORES = 233
    SANTANA = 234
    SANTAREM = 235
    SANTIAGO_DO_CACEM = 236
    SANTO_TIRSO = 237
    SAO_ROQUE_DO_PICO = 238
    SAO_VICENTE = 239
    SARDOAL = 240
    SATAO = 241
    SEIA = 242
    SEIXAL = 243
    SERNANCELHE = 244
    SERPA = 245
    SERTA = 246
    SESIMBRA = 247
    SETUBAL = 248
    SEVER_DO_VOUGA = 249
    SILVES = 250
    SINES = 251
    SINTRA = 252
    SOBRAL_MONTE_AGRACO = 253
    SOURE = 254
    SOUSEL = 255
    STA_CRUZ_DA_GRACIOSA = 256
    STA_MARTA_PENAGUIAO = 257
    TABUA = 258
    TABUACO = 259
    TAROUCA = 260
    TAVIRA = 261
    TERRAS_DO_BOURO = 262
    TOMAR = 263
    TONDELA = 264
    TORRE_DE_MONCORVO = 265
    TORRES_NOVAS = 266
    TORRES_VEDRAS = 267
    TRANCOSO = 268
    TROFA = 269
    V_FRANCA_DE_XIRA = 270
    V_NOVA_DA_BARQUINHA = 271
    V_NOVA_DE_CERVEIRA = 272
    V_NOVA_DE_FAMALICAO = 273
    V_NOVA_DE_FOZ_COA = 274
    VAGOS = 275
    VALE_DE_CAMBRA = 276
    VALENCA = 277
    VALONGO = 278
    VALPACOS = 279
    VELAS = 280
    VENDAS_NOVAS = 281
    VIANA_DO_ALENTEJO = 282
    VIANA_DO_CASTELO = 283
    VIDIGUEIRA = 284
    VIEIRA_DO_MINHO = 285
    VILA_DE_REI = 286
    VILA_DO_BISPO = 287
    VILA_DO_CONDE = 288
    VILA_DO_PORTO = 289
    VILA_FLOR = 290
    VILA_FRANCA_DO_CAMPO = 291
    VILA_NOVA_DE_GAIA = 292
    VILA_NOVA_DE_OUREM = 293
    VILA_NOVA_DE_PAIVA = 294
    VILA_NOVA_POIARES = 295
    VILA_POUCA_DE_AGUIAR = 296
    VILA_PRAIA_VITORIA = 297
    VILA_REAL = 298
    VILA_REAL_S_ANTONIO = 299
    VILA_VELHA_DE_RODAO = 300
    VILA_VERDE = 301
    VILA_VICOSA = 302
    VIMIOSO = 303
    VINHAIS = 304
    VISEU = 305
    VIZELA = 306
    VOUZELA = 307
    End Enum

         
         Function FeriadoLocal(strEstado As String) As NomeEstado
    Select Case strEstado
    Case "ABRANTES"
    FeriadoLocal = 1
    Case "AGUEDA"
    FeriadoLocal = 2
    Case "AGUIAR DA BEIRA"
    FeriadoLocal = 3
    Case "ALANDROAL"
    FeriadoLocal = 4
    Case "ALBERGARIA-A-VELHA"
    FeriadoLocal = 5
    Case "ALBUFEIRA"
    FeriadoLocal = 6
    Case "ALCACER DO SAL"
    FeriadoLocal = 7
    Case "ALCANENA"
    FeriadoLocal = 8
    Case "ALCOBACA"
    FeriadoLocal = 9
    Case "ALCOCHETE"
    FeriadoLocal = 10
    Case "ALCOUTIM"
    FeriadoLocal = 11
    Case "ALENQUER"
    FeriadoLocal = 12
    Case "ALFANDEGA DA FE"
    FeriadoLocal = 13
    Case "ALIJO"
    FeriadoLocal = 14
    Case "ALJEZUR"
    FeriadoLocal = 15
    Case "ALJUSTREL"
    FeriadoLocal = 16
    Case "ALMADA"
    FeriadoLocal = 17
    Case "ALMEIDA"
    FeriadoLocal = 18
    Case "ALMEIRIM"
    FeriadoLocal = 19
    Case "ALMODOVAR"
    FeriadoLocal = 20
    Case "ALPIARCA"
    FeriadoLocal = 21
    Case "ALTER DO CHAO"
    FeriadoLocal = 22
    Case "ALVAIAZERE"
    FeriadoLocal = 23
    Case "ALVITO"
    FeriadoLocal = 24
    Case "AMADORA"
    FeriadoLocal = 25
    Case "AMARANTE"
    FeriadoLocal = 26
    Case "AMARES"
    FeriadoLocal = 27
    Case "ANADIA"
    FeriadoLocal = 28
    Case "ANGRA DO HEROISMO"
    FeriadoLocal = 29
    Case "ANSIAO"
    FeriadoLocal = 30
    Case "ARCOS DE VALDEVEZ"
    FeriadoLocal = 31
    Case "ARGANIL"
    FeriadoLocal = 32
    Case "ARMAMAR"
    FeriadoLocal = 33
    Case "AROUCA"
    FeriadoLocal = 34
    Case "ARRAIOLOS"
    FeriadoLocal = 35
    Case "ARRONCHES"
    FeriadoLocal = 36
    Case "ARRUDA DOS VINHOS"
    FeriadoLocal = 37
    Case "AVEIRO"
    FeriadoLocal = 38
    Case "AVIS"
    FeriadoLocal = 39
    Case "AZAMBUJA"
    FeriadoLocal = 40
    Case "BAIAO"
    FeriadoLocal = 41
    Case "BARCELOS"
    FeriadoLocal = 42
    Case "BARRANCOS"
    FeriadoLocal = 43
    Case "BARREIRO"
    FeriadoLocal = 44
    Case "BATALHA"
    FeriadoLocal = 45
    Case "BEJA"
    FeriadoLocal = 46
    Case "BELMONTE"
    FeriadoLocal = 47
    Case "BENAVENTE"
    FeriadoLocal = 48
    Case "BOMBARRAL"
    FeriadoLocal = 49
    Case "BORBA"
    FeriadoLocal = 50
    Case "BOTICAS"
    FeriadoLocal = 51
    Case "BRAGA"
    FeriadoLocal = 52
    Case "BRAGANCA"
    FeriadoLocal = 53
    Case "CABECEIRAS DE BASTO"
    FeriadoLocal = 54
    Case "CADAVAL"
    FeriadoLocal = 55
    Case "CALDAS DA RAINHA"
    FeriadoLocal = 56
    Case "CALHETA"
    FeriadoLocal = 57
    Case "CAMARA DE LOBOS"
    FeriadoLocal = 58
    Case "CAMINHA"
    FeriadoLocal = 59
    Case "CAMPO MAIOR"
    FeriadoLocal = 60
    Case "CANTANHEDE"
    FeriadoLocal = 61
    Case "CARRAZEDA DE ANSIAES"
    FeriadoLocal = 62
    Case "CARREGAL DO SAL"
    FeriadoLocal = 63
    Case "CARTAXO"
    FeriadoLocal = 64
    Case "CASCAIS"
    FeriadoLocal = 65
    Case "CASTANHEIRA DE PERA"
    FeriadoLocal = 66
    Case "CASTELO BRANCO"
    FeriadoLocal = 67
    Case "CASTELO DE PAIVA"
    FeriadoLocal = 68
    Case "CASTELO DE VIDE"
    FeriadoLocal = 69
    Case "CASTRO D AIRE"
    FeriadoLocal = 70
    Case "CASTRO MARIM"
    FeriadoLocal = 71
    Case "CASTRO VERDE"
    FeriadoLocal = 72
    Case "CELORICO DA BEIRA"
    FeriadoLocal = 73
    Case "CELORICO DE BASTO"
    FeriadoLocal = 74
    Case "CHAMUSCA"
    FeriadoLocal = 75
    Case "CHAVES"
    FeriadoLocal = 76
    Case "CINFAES"
    FeriadoLocal = 77
    Case "COIMBRA"
    FeriadoLocal = 78
    Case "CONDEIXA-A-NOVA"
    FeriadoLocal = 79
    Case "CONSTANCIA"
    FeriadoLocal = 80
    Case "CORUCHE"
    FeriadoLocal = 81
    Case "CORVO"
    FeriadoLocal = 82
    Case "COVILHA"
    FeriadoLocal = 83
    Case "CRATO"
    FeriadoLocal = 84
    Case "CUBA"
    FeriadoLocal = 85
    Case "ELVAS"
    FeriadoLocal = 86
    Case "ENTRONCAMENTO"
    FeriadoLocal = 87
    Case "ESPINHO"
    FeriadoLocal = 88
    Case "ESPOSENDE"
    FeriadoLocal = 89
    Case "ESTARREJA"
    FeriadoLocal = 90
    Case "ESTREMOZ"
    FeriadoLocal = 91
    Case "EVORA"
    FeriadoLocal = 92
    Case "FAFE"
    FeriadoLocal = 93
    Case "FARO"
    FeriadoLocal = 94
    Case "FEIRA"
    FeriadoLocal = 95
    Case "FELGUEIRAS"
    FeriadoLocal = 96
    Case "FERREIRA DO ALENTEJO"
    FeriadoLocal = 97
    Case "FERREIRA DO ZEZERE"
    FeriadoLocal = 98
    Case "FIG. CASTELO RODRIGO"
    FeriadoLocal = 99
    Case "FIGUEIRA DA FOZ"
    FeriadoLocal = 100
    Case "FIGUEIRO DOS VINHOS"
    FeriadoLocal = 101
    Case "FORNOS DE ALGODRES"
    FeriadoLocal = 102
    Case "FREIXO ESPADA-CINTA"
    FeriadoLocal = 103
    Case "FRONTEIRA"
    FeriadoLocal = 104
    Case "FUNCHAL"
    FeriadoLocal = 105
    Case "FUNDAO"
    FeriadoLocal = 106
    Case "GAVIAO"
    FeriadoLocal = 107
    Case "GOIS"
    FeriadoLocal = 108
    Case "GOLEGA"
    FeriadoLocal = 109
    Case "GONDOMAR"
    FeriadoLocal = 110
    Case "GOUVEIA"
    FeriadoLocal = 111
    Case "GRANDOLA"
    FeriadoLocal = 112
    Case "GUARDA"
    FeriadoLocal = 113
    Case "GUIMARAES"
    FeriadoLocal = 114
    Case "HORTA"
    FeriadoLocal = 115
    Case "IDANHA-A-NOVA"
    FeriadoLocal = 116
    Case "ILHAVO"
    FeriadoLocal = 117
    Case "LAGOA"
    FeriadoLocal = 118
    Case "LAGOA - SAO MIGUEL"
    FeriadoLocal = 119
    Case "LAGOS"
    FeriadoLocal = 120
    Case "LAJES DAS FLORES"
    FeriadoLocal = 121
    Case "LAJES DO PICO"
    FeriadoLocal = 122
    Case "LAMEGO"
    FeriadoLocal = 123
    Case "LEIRIA"
    FeriadoLocal = 124
    Case "LISBOA"
    FeriadoLocal = 125
    Case "LOULE"
    FeriadoLocal = 126
    Case "LOURES"
    FeriadoLocal = 127
    Case "LOURINHA"
    FeriadoLocal = 128
    Case "LOUSA"
    FeriadoLocal = 129
    Case "LOUSADA"
    FeriadoLocal = 130
    Case "MACAO"
    FeriadoLocal = 131
    Case "MACEDO DE CAVALEIROS"
    FeriadoLocal = 132
    Case "MACHICO"
    FeriadoLocal = 133
    Case "MADALENA"
    FeriadoLocal = 134
    Case "MAFRA"
    FeriadoLocal = 135
    Case "MAIA"
    FeriadoLocal = 136
    Case "MANGUALDE"
    FeriadoLocal = 137
    Case "MANTEIGAS"
    FeriadoLocal = 138
    Case "MARCO DE CANAVESES"
    FeriadoLocal = 139
    Case "MARINHA GRANDE"
    FeriadoLocal = 140
    Case "MARVAO"
    FeriadoLocal = 141
    Case "MATOSINHOS"
    FeriadoLocal = 142
    Case "MEALHADA"
    FeriadoLocal = 143
    Case "MEDA"
    FeriadoLocal = 144
    Case "MELGACO"
    FeriadoLocal = 145
    Case "MERTOLA"
    FeriadoLocal = 146
    Case "MESAO FRIO"
    FeriadoLocal = 147
    Case "MIRA"
    FeriadoLocal = 148
    Case "MIRANDA DO CORVO"
    FeriadoLocal = 149
    Case "MIRANDA DO DOURO"
    FeriadoLocal = 150
    Case "MIRANDELA"
    FeriadoLocal = 151
    Case "MOGADOURO"
    FeriadoLocal = 152
    Case "MOIMENTA DA BEIRA"
    FeriadoLocal = 153
    Case "MOITA"
    FeriadoLocal = 154
    Case "MONCAO"
    FeriadoLocal = 155
    Case "MONCHIQUE"
    FeriadoLocal = 156
    Case "MONDIM DE BASTO"
    FeriadoLocal = 157
    Case "MONFORTE"
    FeriadoLocal = 158
    Case "MONTALEGRE"
    FeriadoLocal = 159
    Case "MONTEMOR-O-NOVO"
    FeriadoLocal = 160
    Case "MONTEMOR-O-VELHO"
    FeriadoLocal = 161
    Case "MONTIJO"
    FeriadoLocal = 162
    Case "MORA"
    FeriadoLocal = 163
    Case "MORTAGUA"
    FeriadoLocal = 164
    Case "MOURA"
    FeriadoLocal = 165
    Case "MOURAO"
    FeriadoLocal = 166
    Case "MURCA"
    FeriadoLocal = 167
    Case "MURTOSA"
    FeriadoLocal = 168
    Case "NAZARE"
    FeriadoLocal = 169
    Case "NELAS"
    FeriadoLocal = 170
    Case "NISA"
    FeriadoLocal = 171
    Case "NORDESTE"
    FeriadoLocal = 172
    Case "OBIDOS"
    FeriadoLocal = 173
    Case "ODEMIRA"
    FeriadoLocal = 174
    Case "ODIVELAS"
    FeriadoLocal = 175
    Case "OEIRAS"
    FeriadoLocal = 176
    Case "OLEIROS"
    FeriadoLocal = 177
    Case "OLHAO"
    FeriadoLocal = 178
    Case "OLIVEIRA DE AZEMEIS"
    FeriadoLocal = 179
    Case "OLIVEIRA DE FRADES"
    FeriadoLocal = 180
    Case "OLIVEIRA DO BAIRRO"
    FeriadoLocal = 181
    Case "OLIVEIRA DO HOSPITAL"
    FeriadoLocal = 182
    Case "OURIQUE"
    FeriadoLocal = 183
    Case "OVAR"
    FeriadoLocal = 184
    Case "PACOS DE FERREIRA"
    FeriadoLocal = 185
    Case "PALMELA"
    FeriadoLocal = 186
    Case "PAMPILHOSA DA SERRA"
    FeriadoLocal = 187
    Case "PAREDES"
    FeriadoLocal = 188
    Case "PAREDES DE COURA"
    FeriadoLocal = 189
    Case "PEDROGAO GRANDE"
    FeriadoLocal = 190
    Case "PENACOVA"
    FeriadoLocal = 191
    Case "PENAFIEL"
    FeriadoLocal = 192
    Case "PENALVA DO CASTELO"
    FeriadoLocal = 193
    Case "PENAMACOR"
    FeriadoLocal = 194
    Case "PENEDONO"
    FeriadoLocal = 195
    Case "PENELA"
    FeriadoLocal = 196
    Case "PENICHE"
    FeriadoLocal = 197
    Case "PESO DA REGUA"
    FeriadoLocal = 198
    Case "PINHEL"
    FeriadoLocal = 199
    Case "POMBAL"
    FeriadoLocal = 200
    Case "PONTA DELGADA"
    FeriadoLocal = 201
    Case "PONTA DO SOL"
    FeriadoLocal = 202
    Case "PONTE DA BARCA"
    FeriadoLocal = 203
    Case "PONTE DE LIMA"
    FeriadoLocal = 204
    Case "PONTE DE SOR"
    FeriadoLocal = 205
    Case "PORTALEGRE"
    FeriadoLocal = 206
    Case "PORTEL"
    FeriadoLocal = 207
    Case "PORTIMAO"
    FeriadoLocal = 208
    Case "PORTO"
    FeriadoLocal = 209
    Case "PORTO DE MOS"
    FeriadoLocal = 210
    Case "PORTO MONIZ"
    FeriadoLocal = 211
    Case "PORTO SANTO"
    FeriadoLocal = 212
    Case "POVOA DE LANHOSO"
    FeriadoLocal = 213
    Case "POVOA DE VARZIM"
    FeriadoLocal = 214
    Case "POVOACAO"
    FeriadoLocal = 215
    Case "PROENCA-A-NOVA"
    FeriadoLocal = 216
    Case "REDONDO"
    FeriadoLocal = 217
    Case "REGUENGOS MONSARAZ"
    FeriadoLocal = 218
    Case "RESENDE"
    FeriadoLocal = 219
    Case "RIBEIRA BRAVA"
    FeriadoLocal = 220
    Case "RIBEIRA DE PENA"
    FeriadoLocal = 221
    Case "RIBEIRA GRANDE"
    FeriadoLocal = 222
    Case "RIO MAIOR"
    FeriadoLocal = 223
    Case "S. JOAO DA MADEIRA"
    FeriadoLocal = 224
    Case "S. JOAO DA PESQUEIRA"
    FeriadoLocal = 225
    Case "S. PEDRO DO SUL"
    FeriadoLocal = 226
    Case "S.BRAS DE ALPORTEL"
    FeriadoLocal = 227
    Case "SABROSA"
    FeriadoLocal = 228
    Case "SABUGAL"
    FeriadoLocal = 229
    Case "SALVATERRA DE MAGOS"
    FeriadoLocal = 230
    Case "SANTA COMBA DAO"
    FeriadoLocal = 231
    Case "SANTA CRUZ"
    FeriadoLocal = 232
    Case "SANTA CRUZ FLORES"
    FeriadoLocal = 233
    Case "SANTANA"
    FeriadoLocal = 234
    Case "SANTAREM"
    FeriadoLocal = 235
    Case "SANTIAGO DO CACEM"
    FeriadoLocal = 236
    Case "SANTO TIRSO"
    FeriadoLocal = 237
    Case "SAO ROQUE DO PICO"
    FeriadoLocal = 238
    Case "SAO VICENTE"
    FeriadoLocal = 239
    Case "SARDOAL"
    FeriadoLocal = 240
    Case "SATAO"
    FeriadoLocal = 241
    Case "SEIA"
    FeriadoLocal = 242
    Case "SEIXAL"
    FeriadoLocal = 243
    Case "SERNANCELHE"
    FeriadoLocal = 244
    Case "SERPA"
    FeriadoLocal = 245
    Case "SERTA"
    FeriadoLocal = 246
    Case "SESIMBRA"
    FeriadoLocal = 247
    Case "SETUBAL"
    FeriadoLocal = 248
    Case "SEVER DO VOUGA"
    FeriadoLocal = 249
    Case "SILVES"
    FeriadoLocal = 250
    Case "SINES"
    FeriadoLocal = 251
    Case "SINTRA"
    FeriadoLocal = 252
    Case "SOBRAL MONTE AGRACO"
    FeriadoLocal = 253
    Case "SOURE"
    FeriadoLocal = 254
    Case "SOUSEL"
    FeriadoLocal = 255
    Case "STA CRUZ DA GRACIOSA"
    FeriadoLocal = 256
    Case "STA MARTA PENAGUIAO"
    FeriadoLocal = 257
    Case "TABUA"
    FeriadoLocal = 258
    Case "TABUACO"
    FeriadoLocal = 259
    Case "TAROUCA"
    FeriadoLocal = 260
    Case "TAVIRA"
    FeriadoLocal = 261
    Case "TERRAS DO BOURO"
    FeriadoLocal = 262
    Case "TOMAR"
    FeriadoLocal = 263
    Case "TONDELA"
    FeriadoLocal = 264
    Case "TORRE DE MONCORVO"
    FeriadoLocal = 265
    Case "TORRES NOVAS"
    FeriadoLocal = 266
    Case "TORRES VEDRAS"
    FeriadoLocal = 267
    Case "TRANCOSO"
    FeriadoLocal = 268
    Case "TROFA"
    FeriadoLocal = 269
    Case "V. FRANCA DE XIRA"
    FeriadoLocal = 270
    Case "V. NOVA DA BARQUINHA"
    FeriadoLocal = 271
    Case "V. NOVA DE CERVEIRA"
    FeriadoLocal = 272
    Case "V. NOVA DE FAMALICAO"
    FeriadoLocal = 273
    Case "V. NOVA DE FOZ COA"
    FeriadoLocal = 274
    Case "VAGOS"
    FeriadoLocal = 275
    Case "VALE DE CAMBRA"
    FeriadoLocal = 276
    Case "VALENCA"
    FeriadoLocal = 277
    Case "VALONGO"
    FeriadoLocal = 278
    Case "VALPACOS"
    FeriadoLocal = 279
    Case "VELAS"
    FeriadoLocal = 280
    Case "VENDAS NOVAS"
    FeriadoLocal = 281
    Case "VIANA DO ALENTEJO"
    FeriadoLocal = 282
    Case "VIANA DO CASTELO"
    FeriadoLocal = 283
    Case "VIDIGUEIRA"
    FeriadoLocal = 284
    Case "VIEIRA DO MINHO"
    FeriadoLocal = 285
    Case "VILA DE REI"
    FeriadoLocal = 286
    Case "VILA DO BISPO"
    FeriadoLocal = 287
    Case "VILA DO CONDE"
    FeriadoLocal = 288
    Case "VILA DO PORTO"
    FeriadoLocal = 289
    Case "VILA FLOR"
    FeriadoLocal = 290
    Case "VILA FRANCA DO CAMPO"
    FeriadoLocal = 291
    Case "VILA NOVA DE GAIA"
    FeriadoLocal = 292
    Case "VILA NOVA DE OUREM"
    FeriadoLocal = 293
    Case "VILA NOVA DE PAIVA"
    FeriadoLocal = 294
    Case "VILA NOVA POIARES"
    FeriadoLocal = 295
    Case "VILA POUCA DE AGUIAR"
    FeriadoLocal = 296
    Case "VILA PRAIA VITORIA"
    FeriadoLocal = 297
    Case "VILA REAL"
    FeriadoLocal = 298
    Case "VILA REAL S. ANTONIO"
    FeriadoLocal = 299
    Case "VILA VELHA DE RODAO"
    FeriadoLocal = 300
    Case "VILA VERDE"
    FeriadoLocal = 301
    Case "VILA VICOSA"
    FeriadoLocal = 302
    Case "VIMIOSO"
    FeriadoLocal = 303
    Case "VINHAIS"
    FeriadoLocal = 304
    Case "VISEU"
    FeriadoLocal = 305
    Case "VIZELA"
    FeriadoLocal = 306
    Case "VOUZELA"
    FeriadoLocal = 307

    End Select
    End Function




    Function DiasUteisPT(DataInicial As Date, DataFinal As Date, Optional Estado As NomeEstado) As Integer
    Dim DataActual As Date
    DiasUteisPT = 0
    For DataActual = DataInicial To DataFinal
    If Not FeriadoPT(DataActual, Estado) And Weekday(DataActual) <> 1 And Weekday(DataActual) <> 7 Then DiasUteisPT = DiasUteisPT + 1
    Next
    End Function

    Function PascoaB(intAno As Integer) As Date

    Dim X As Byte, y As Byte
    Dim a As Byte, b As Byte, c As Byte, d As Byte, e As Byte

    If intAno > 1581 And intAno < 1600 Then X = 22: y = 2
    If intAno > 1599 And intAno < 1700 Then X = 22: y = 2
    If intAno > 1699 And intAno < 1800 Then X = 23: y = 3
    If intAno > 1799 And intAno < 1900 Then X = 23: y = 4
    If intAno > 1899 And intAno < 2000 Then X = 24: y = 5
    If intAno > 1999 And intAno < 2100 Then X = 24: y = 5
    If intAno > 2099 And intAno < 2200 Then X = 24: y = 6
    If intAno > 2199 And intAno < 2300 Then X = 25: y = 7

    a = intAno Mod 19
    b = intAno Mod 4
    c = intAno Mod 7
    d = ((19 * a) + X) Mod 30
    e = ((2 * b) + (4 * c) + (6 * d) + y) Mod 7
    If (d + e) < 10 Then
    PascoaB = DateSerial(intAno, 3, d + e + 22)
    Else
    PascoaB = DateSerial(intAno, 4, d + e - 9)
    End If
    If PascoaB = DateSerial(intAno, 4, 26) Then PascoaB = DateAdd("d", -7, PascoaB)
    If PascoaB = DateSerial(intAno, 4, 25) And d = 28 And a > 10 Then PascoaB = DateAdd("d", -7, PascoaB)
    End Function

    Function FeriadoPT(dtData As Date, Optional strNomeEstado As NomeEstado) As Boolean

    FeriadoPT = False
    Select Case Format(dtData, "dd-mm")
    Case "01=01"
    FeriadoPT = True
    Case "01-01"
    FeriadoPT = True
    Case "03-04"
    FeriadoPT = True
    Case "05-04"
    FeriadoPT = True
    Case "25-04"
    FeriadoPT = True
    Case "01-05"
    FeriadoPT = True
    Case "10-06"
    FeriadoPT = True
    Case "15-08"
    FeriadoPT = True
    Case "08-12"
    FeriadoPT = True
    Case "24-12"
    FeriadoPT = True
    Case "25-12"
    FeriadoPT = True
    End Select

    If dtData = DateAdd("d", -47, PascoaB(Year(dtData))) Then FeriadoPT = True
    If dtData = DateAdd("d", -2, PascoaB(Year(dtData))) Then FeriadoPT = True
    If dtData = PascoaB(Year(dtData)) Then FeriadoPT = True
    If dtData = DateAdd("d", 49, PascoaB(Year(dtData))) Then FeriadoPT = True
    If dtData = DateAdd("d", 56, PascoaB(Year(dtData))) Then FeriadoPT = True
    If dtData = DateAdd("d", 60, PascoaB(Year(dtData))) Then FeriadoPT = True

    If Not IsMissing(strNomeEstado) Then
    Select Case strNomeEstado

    Case ABRANTES
    If Format(dtData, "dd-mm") = "14-06" Then FeriadoPT = True
    Case AGUEDA
    If Format(dtData, "dd-mm") = "25-05" Then FeriadoPT = True
    Case AGUIAR_DA_BEIRA
    If Format(dtData, "dd-mm") = "10-02" Then FeriadoPT = True
    Case ALANDROAL
    If Format(dtData, "dd-mm") = "13-04" Then FeriadoPT = True
    Case ALBERGARIA_A_VELHA
    If Format(dtData, "dd-mm") = "17-08" Then FeriadoPT = True
    Case ALBUFEIRA
    If Format(dtData, "dd-mm") = "20-08" Then FeriadoPT = True
    Case ALCACER_DO_SAL
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case ALCANENA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ALCOBACA
    If Format(dtData, "dd-mm") = "20-08" Then FeriadoPT = True
    Case ALCOCHETE
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case ALCOUTIM
    If Format(dtData, "dd-mm") = "11-09" Then FeriadoPT = True
    Case ALENQUER
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ALFANDEGA_DA_FE
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case ALIJO
    If Format(dtData, "dd-mm") = "11-11" Then FeriadoPT = True
    Case ALJEZUR
    If Format(dtData, "dd-mm") = "29-08" Then FeriadoPT = True
    Case ALJUSTREL
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case ALMADA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case ALMEIDA
    If Format(dtData, "dd-mm") = "02-07" Then FeriadoPT = True
    Case ALMEIRIM
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ALMODOVAR
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case ALPIARCA
    If Format(dtData, "dd-mm") = "02-04" Then FeriadoPT = True
    Case ALTER_DO_CHAO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ALVAIAZERE
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case ALVITO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case AMADORA
    If Format(dtData, "dd-mm") = "11-09" Then FeriadoPT = True
    Case AMARANTE
    If Format(dtData, "dd-mm") = "08-07" Then FeriadoPT = True
    Case AMARES
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case ANADIA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ANGRA_DO_HEROISMO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case ANSIAO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ARCOS_DE_VALDEVEZ
    If Format(dtData, "dd-mm") = "11-07" Then FeriadoPT = True
    Case ARGANIL
    If Format(dtData, "dd-mm") = "07-09" Then FeriadoPT = True
    Case ARMAMAR
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case AROUCA
    If Format(dtData, "dd-mm") = "02-05" Then FeriadoPT = True
    Case ARRAIOLOS
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case ARRONCHES
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case ARRUDA_DOS_VINHOS
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case AVEIRO
    If Format(dtData, "dd-mm") = "12-05" Then FeriadoPT = True
    Case AVIS
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case AZAMBUJA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case BAIAO
    If Format(dtData, "dd-mm") = "24-08" Then FeriadoPT = True
    Case BARCELOS
    If Format(dtData, "dd-mm") = "03-05" Then FeriadoPT = True
    Case BARRANCOS
    If Format(dtData, "dd-mm") = "28-08" Then FeriadoPT = True
    Case BARREIRO
    If Format(dtData, "dd-mm") = "28-06" Then FeriadoPT = True
    Case BATALHA
    If Format(dtData, "dd-mm") = "14-08" Then FeriadoPT = True
    Case BEJA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case BELMONTE
    If Format(dtData, "dd-mm") = "26-04" Then FeriadoPT = True
    Case BENAVENTE
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case BOMBARRAL
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case BORBA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case BOTICAS
    If Format(dtData, "dd-mm") = "06-11" Then FeriadoPT = True
    Case BRAGA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case BRAGANCA
    If Format(dtData, "dd-mm") = "22-08" Then FeriadoPT = True
    Case CABECEIRAS_DE_BASTO
    If Format(dtData, "dd-mm") = "29-09" Then FeriadoPT = True
    Case CADAVAL
    If Format(dtData, "dd-mm") = "13-01" Then FeriadoPT = True
    Case CALDAS_DA_RAINHA
    If Format(dtData, "dd-mm") = "15-05" Then FeriadoPT = True
    Case CALHETA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case CAMARA_DE_LOBOS
    If Format(dtData, "dd-mm") = "16-10" Then FeriadoPT = True
    Case CAMINHA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case CAMPO_MAIOR
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case CANTANHEDE
    If Format(dtData, "dd-mm") = "25-07" Then FeriadoPT = True
    Case CARRAZEDA_DE_ANSIAES
    If Format(dtData, "dd-mm") = "28-08" Then FeriadoPT = True
    Case CARREGAL_DO_SAL
    If Format(dtData, "dd-mm") = "20-07" Then FeriadoPT = True
    Case CARTAXO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case CASCAIS
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case CASTANHEIRA_DE_PERA
    If Format(dtData, "dd-mm") = "04-07" Then FeriadoPT = True
    Case CASTELO_BRANCO
    If Format(dtData, "dd-mm") = "14-04" Then FeriadoPT = True
    Case CASTELO_DE_PAIVA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case CASTELO_DE_VIDE
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case CASTRO_D_AIRE
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case CASTRO_MARIM
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case CASTRO_VERDE
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case CELORICO_DA_BEIRA
    If Format(dtData, "dd-mm") = "23-05" Then FeriadoPT = True
    Case CELORICO_DE_BASTO
    If Format(dtData, "dd-mm") = "25-07" Then FeriadoPT = True
    Case CHAMUSCA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case CHAVES
    If Format(dtData, "dd-mm") = "08-07" Then FeriadoPT = True
    Case CINFAES
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case COIMBRA
    If Format(dtData, "dd-mm") = "04-07" Then FeriadoPT = True
    Case CONDEIXA_A_NOVA
    If Format(dtData, "dd-mm") = "24-07" Then FeriadoPT = True
    Case CONSTANCIA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case CORUCHE
    If Format(dtData, "dd-mm") = "17-08" Then FeriadoPT = True
    Case CORVO
    If Format(dtData, "dd-mm") = "20-06" Then FeriadoPT = True
    Case COVILHA
    If Format(dtData, "dd-mm") = "20-10" Then FeriadoPT = True
    Case CRATO
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case CUBA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case ELVAS
    If Format(dtData, "dd-mm") = "14-01" Then FeriadoPT = True
    Case ENTRONCAMENTO
    If Format(dtData, "dd-mm") = "24-11" Then FeriadoPT = True
    Case ESPINHO
    If Format(dtData, "dd-mm") = "16-06" Then FeriadoPT = True
    Case ESPOSENDE
    If Format(dtData, "dd-mm") = "19-08" Then FeriadoPT = True
    Case ESTARREJA
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case ESTREMOZ
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case EVORA
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case FAFE
    If Format(dtData, "dd-mm") = "16-05" Then FeriadoPT = True
    Case FARO
    If Format(dtData, "dd-mm") = "07-09" Then FeriadoPT = True
    Case FEIRA
    If Format(dtData, "dd-mm") = "20-01" Then FeriadoPT = True
    Case FELGUEIRAS
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case FERREIRA_DO_ALENTEJO
    If Format(dtData, "dd-mm") = "05-03" Then FeriadoPT = True
    Case FERREIRA_DO_ZEZERE
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case FIG_CASTELO_RODRIGO
    If Format(dtData, "dd-mm") = "07-07" Then FeriadoPT = True
    Case FIGUEIRA_DA_FOZ
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case FIGUEIRO_DOS_VINHOS
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case FORNOS_DE_ALGODRES
    If Format(dtData, "dd-mm") = "29-09" Then FeriadoPT = True
    Case FREIXO_ESPADA_CINTA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case FRONTEIRA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case FUNCHAL
    If Format(dtData, "dd-mm") = "21-08" Then FeriadoPT = True
    Case FUNDAO
    If Format(dtData, "dd-mm") = "15-09" Then FeriadoPT = True
    Case GAVIAO
    If Format(dtData, "dd-mm") = "23-11" Then FeriadoPT = True
    Case GOIS
    If Format(dtData, "dd-mm") = "13-08" Then FeriadoPT = True
    Case GOLEGA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case GONDOMAR
    If Format(dtData, "dd-mm") = "05-10" Then FeriadoPT = True
    Case GOUVEIA
    If Format(dtData, "dd-mm") = "10-08" Then FeriadoPT = True
    Case GRANDOLA
    If Format(dtData, "dd-mm") = "22-10" Then FeriadoPT = True
    Case GUARDA
    If Format(dtData, "dd-mm") = "26-11" Then FeriadoPT = True
    Case GUIMARAES
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case HORTA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case IDANHA_A_NOVA
    If Format(dtData, "dd-mm") = "20-04" Then FeriadoPT = True
    Case ILHAVO
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case LAGOA
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case LAGOA___SAO_MIGUEL
    If Format(dtData, "dd-mm") = "11-04" Then FeriadoPT = True
    Case LAGOS
    If Format(dtData, "dd-mm") = "27-10" Then FeriadoPT = True
    Case LAJES_DAS_FLORES
    If Format(dtData, "dd-mm") = "20-07" Then FeriadoPT = True
    Case LAJES_DO_PICO
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case LAMEGO
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case LEIRIA
    If Format(dtData, "dd-mm") = "22-05" Then FeriadoPT = True
    Case LISBOA
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case LOULE
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case LOURES
    If Format(dtData, "dd-mm") = "26-07" Then FeriadoPT = True
    Case LOURINHA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case LOUSA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case LOUSADA
    If Format(dtData, "dd-mm") = "27-07" Then FeriadoPT = True
    Case MACAO
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case MACEDO_DE_CAVALEIROS
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case MACHICO
    If Format(dtData, "dd-mm") = "09-10" Then FeriadoPT = True
    Case MADALENA
    If Format(dtData, "dd-mm") = "22-07" Then FeriadoPT = True
    Case MAFRA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case MAIA
    If Format(dtData, "dd-mm") = "13-07" Then FeriadoPT = True
    Case MANGUALDE
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case MANTEIGAS
    If Format(dtData, "dd-mm") = "04-03" Then FeriadoPT = True
    Case MARCO_DE_CANAVESES
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case MARINHA_GRANDE
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case MARVAO
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case MATOSINHOS
    If Format(dtData, "dd-mm") = "26-05" Then FeriadoPT = True
    Case MEALHADA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case MEDA
    If Format(dtData, "dd-mm") = "11-11" Then FeriadoPT = True
    Case MELGACO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case MERTOLA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case MESAO_FRIO
    If Format(dtData, "dd-mm") = "30-11" Then FeriadoPT = True
    Case MIRA
    If Format(dtData, "dd-mm") = "25-07" Then FeriadoPT = True
    Case MIRANDA_DO_CORVO
    If Format(dtData, "dd-mm") = "01-06" Then FeriadoPT = True
    Case MIRANDA_DO_DOURO
    If Format(dtData, "dd-mm") = "10-07" Then FeriadoPT = True
    Case MIRANDELA
    If Format(dtData, "dd-mm") = "25-05" Then FeriadoPT = True
    Case MOGADOURO
    If Format(dtData, "dd-mm") = "15-10" Then FeriadoPT = True
    Case MOIMENTA_DA_BEIRA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case MOITA
    If Format(dtData, "dd-mm") = "15-09" Then FeriadoPT = True
    Case MONCAO
    If Format(dtData, "dd-mm") = "12-03" Then FeriadoPT = True
    Case MONCHIQUE
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case MONDIM_DE_BASTO
    If Format(dtData, "dd-mm") = "25-07" Then FeriadoPT = True
    Case MONFORTE
    If Format(dtData, "dd-mm") = "13-04" Then FeriadoPT = True
    Case MONTALEGRE
    If Format(dtData, "dd-mm") = "09-06" Then FeriadoPT = True
    Case MONTEMOR_O_NOVO
    If Format(dtData, "dd-mm") = "08-03" Then FeriadoPT = True
    Case MONTEMOR_O_VELHO
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case MONTIJO
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case MORA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case MORTAGUA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case MOURA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case MOURAO
    If Format(dtData, "dd-mm") = "02-02" Then FeriadoPT = True
    Case MURCA
    If Format(dtData, "dd-mm") = "08-05" Then FeriadoPT = True
    Case MURTOSA
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case NAZARE
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case NELAS
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case NISA
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case NORDESTE
    If Format(dtData, "dd-mm") = "18-07" Then FeriadoPT = True
    Case OBIDOS
    If Format(dtData, "dd-mm") = "11-01" Then FeriadoPT = True
    Case ODEMIRA
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case ODIVELAS
    If Format(dtData, "dd-mm") = "19-11" Then FeriadoPT = True
    Case OEIRAS
    If Format(dtData, "dd-mm") = "07-06" Then FeriadoPT = True
    Case OLEIROS
    If Format(dtData, "dd-mm") = "10-08" Then FeriadoPT = True
    Case OLHAO
    If Format(dtData, "dd-mm") = "16-06" Then FeriadoPT = True
    Case OLIVEIRA_DE_AZEMEIS
    If Format(dtData, "dd-mm") = "10-08" Then FeriadoPT = True
    Case OLIVEIRA_DE_FRADES
    If Format(dtData, "dd-mm") = "07-10" Then FeriadoPT = True
    Case OLIVEIRA_DO_BAIRRO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case OLIVEIRA_DO_HOSPITAL
    If Format(dtData, "dd-mm") = "07-10" Then FeriadoPT = True
    Case OURIQUE
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case OVAR
    If Format(dtData, "dd-mm") = "25-07" Then FeriadoPT = True
    Case PACOS_DE_FERREIRA
    If Format(dtData, "dd-mm") = "06-11" Then FeriadoPT = True
    Case PALMELA
    If Format(dtData, "dd-mm") = "01-06" Then FeriadoPT = True
    Case PAMPILHOSA_DA_SERRA
    If Format(dtData, "dd-mm") = "10-04" Then FeriadoPT = True
    Case PAREDES
    If Format(dtData, "dd-mm") = "20-07" Then FeriadoPT = True
    Case PAREDES_DE_COURA
    If Format(dtData, "dd-mm") = "10-08" Then FeriadoPT = True
    Case PEDROGAO_GRANDE
    If Format(dtData, "dd-mm") = "24-07" Then FeriadoPT = True
    Case PENACOVA
    If Format(dtData, "dd-mm") = "17-07" Then FeriadoPT = True
    Case PENAFIEL
    If Format(dtData, "dd-mm") = "11-11" Then FeriadoPT = True
    Case PENALVA_DO_CASTELO
    If Format(dtData, "dd-mm") = "25-08" Then FeriadoPT = True
    Case PENAMACOR
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case PENEDONO
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case PENELA
    If Format(dtData, "dd-mm") = "29-09" Then FeriadoPT = True
    Case PENICHE
    If Format(dtData, "dd-mm") = "03-08" Then FeriadoPT = True
    Case PESO_DA_REGUA
    If Format(dtData, "dd-mm") = "16-08" Then FeriadoPT = True
    Case PINHEL
    If Format(dtData, "dd-mm") = "25-08" Then FeriadoPT = True
    Case POMBAL
    If Format(dtData, "dd-mm") = "11-11" Then FeriadoPT = True
    Case PONTA_DELGADA
    If Format(dtData, "dd-mm") = "11-05" Then FeriadoPT = True
    Case PONTA_DO_SOL
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case PONTE_DA_BARCA
    If Format(dtData, "dd-mm") = "24-08" Then FeriadoPT = True
    Case PONTE_DE_LIMA
    If Format(dtData, "dd-mm") = "20-09" Then FeriadoPT = True
    Case PONTE_DE_SOR
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case PORTALEGRE
    If Format(dtData, "dd-mm") = "23-05" Then FeriadoPT = True
    Case PORTEL
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case PORTIMAO
    If Format(dtData, "dd-mm") = "11-12" Then FeriadoPT = True
    Case PORTO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case PORTO_DE_MOS
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case PORTO_MONIZ
    If Format(dtData, "dd-mm") = "22-07" Then FeriadoPT = True
    Case PORTO_SANTO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case POVOA_DE_LANHOSO
    If Format(dtData, "dd-mm") = "19-03" Then FeriadoPT = True
    Case POVOA_DE_VARZIM
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case POVOACAO
    If Format(dtData, "dd-mm") = "05-06" Then FeriadoPT = True
    Case PROENCA_A_NOVA
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case REDONDO
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case REGUENGOS_MONSARAZ
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case RESENDE
    If Format(dtData, "dd-mm") = "29-09" Then FeriadoPT = True
    Case RIBEIRA_BRAVA
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case RIBEIRA_DE_PENA
    If Format(dtData, "dd-mm") = "16-08" Then FeriadoPT = True
    Case RIBEIRA_GRANDE
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case RIO_MAIOR
    If Format(dtData, "dd-mm") = "06-11" Then FeriadoPT = True
    Case S_JOAO_DA_MADEIRA
    If Format(dtData, "dd-mm") = "11-10" Then FeriadoPT = True
    Case S_JOAO_DA_PESQUEIRA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case S_PEDRO_DO_SUL
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case SBRAS_DE_ALPORTEL
    If Format(dtData, "dd-mm") = "01-06" Then FeriadoPT = True
    Case SABROSA
    If Format(dtData, "dd-mm") = "08-09" Then FeriadoPT = True
    Case SABUGAL
    If Format(dtData, "dd-mm") = "13-04" Then FeriadoPT = True
    Case SALVATERRA_DE_MAGOS
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case SANTA_COMBA_DAO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case SANTA_CRUZ
    If Format(dtData, "dd-mm") = "15-01" Then FeriadoPT = True
    Case SANTA_CRUZ_FLORES
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case SANTANA
    If Format(dtData, "dd-mm") = "25-05" Then FeriadoPT = True
    Case SANTAREM
    If Format(dtData, "dd-mm") = "19-03" Then FeriadoPT = True
    Case SANTIAGO_DO_CACEM
    If Format(dtData, "dd-mm") = "25-07" Then FeriadoPT = True
    Case SANTO_TIRSO
    If Format(dtData, "dd-mm") = "11-07" Then FeriadoPT = True
    Case SAO_ROQUE_DO_PICO
    If Format(dtData, "dd-mm") = "16-08" Then FeriadoPT = True
    Case SAO_VICENTE
    If Format(dtData, "dd-mm") = "22-01" Then FeriadoPT = True
    Case SARDOAL
    If Format(dtData, "dd-mm") = "22-09" Then FeriadoPT = True
    Case SATAO
    If Format(dtData, "dd-mm") = "20-08" Then FeriadoPT = True
    Case SEIA
    If Format(dtData, "dd-mm") = "03-07" Then FeriadoPT = True
    Case SEIXAL
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case SERNANCELHE
    If Format(dtData, "dd-mm") = "03-05" Then FeriadoPT = True
    Case SERPA
    If Format(dtData, "dd-mm") = "07-04" Then FeriadoPT = True
    Case SERTA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case SESIMBRA
    If Format(dtData, "dd-mm") = "04-05" Then FeriadoPT = True
    Case SETUBAL
    If Format(dtData, "dd-mm") = "15-09" Then FeriadoPT = True
    Case SEVER_DO_VOUGA
    If Format(dtData, "dd-mm") = "21-09" Then FeriadoPT = True
    Case SILVES
    If Format(dtData, "dd-mm") = "03-09" Then FeriadoPT = True
    Case SINES
    If Format(dtData, "dd-mm") = "24-11" Then FeriadoPT = True
    Case SINTRA
    If Format(dtData, "dd-mm") = "29-06" Then FeriadoPT = True
    Case SOBRAL_MONTE_AGRACO
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case SOURE
    If Format(dtData, "dd-mm") = "21-09" Then FeriadoPT = True
    Case SOUSEL
    If Format(dtData, "dd-mm") = "06-04" Then FeriadoPT = True
    Case STA_CRUZ_DA_GRACIOSA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case STA_MARTA_PENAGUIAO
    If Format(dtData, "dd-mm") = "13-01" Then FeriadoPT = True
    Case TABUA
    If Format(dtData, "dd-mm") = "10-04" Then FeriadoPT = True
    Case TABUACO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case TAROUCA
    If Format(dtData, "dd-mm") = "29-09" Then FeriadoPT = True
    Case TAVIRA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case TERRAS_DO_BOURO
    If Format(dtData, "dd-mm") = "20-10" Then FeriadoPT = True
    Case TOMAR
    If Format(dtData, "dd-mm") = "01-03" Then FeriadoPT = True
    Case TONDELA
    If Format(dtData, "dd-mm") = "16-09" Then FeriadoPT = True
    Case TORRE_DE_MONCORVO
    If Format(dtData, "dd-mm") = "19-03" Then FeriadoPT = True
    Case TORRES_NOVAS
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case TORRES_VEDRAS
    If Format(dtData, "dd-mm") = "11-11" Then FeriadoPT = True
    Case TRANCOSO
    If Format(dtData, "dd-mm") = "29-05" Then FeriadoPT = True
    Case TROFA
    If Format(dtData, "dd-mm") = "19-11" Then FeriadoPT = True
    Case V_FRANCA_DE_XIRA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case V_NOVA_DA_BARQUINHA
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case V_NOVA_DE_CERVEIRA
    If Format(dtData, "dd-mm") = "01-10" Then FeriadoPT = True
    Case V_NOVA_DE_FAMALICAO
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case V_NOVA_DE_FOZ_COA
    If Format(dtData, "dd-mm") = "21-05" Then FeriadoPT = True
    Case VAGOS
    If Format(dtData, "dd-mm") = "25-05" Then FeriadoPT = True
    Case VALE_DE_CAMBRA
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case VALENCA
    If Format(dtData, "dd-mm") = "18-02" Then FeriadoPT = True
    Case VALONGO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case VALPACOS
    If Format(dtData, "dd-mm") = "06-11" Then FeriadoPT = True
    Case VELAS
    If Format(dtData, "dd-mm") = "23-04" Then FeriadoPT = True
    Case VENDAS_NOVAS
    If Format(dtData, "dd-mm") = "07-09" Then FeriadoPT = True
    Case VIANA_DO_ALENTEJO
    If Format(dtData, "dd-mm") = "13-01" Then FeriadoPT = True
    Case VIANA_DO_CASTELO
    If Format(dtData, "dd-mm") = "20-08" Then FeriadoPT = True
    Case VIDIGUEIRA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True
    Case VIEIRA_DO_MINHO
    If Format(dtData, "dd-mm") = "05-10" Then FeriadoPT = True
    Case VILA_DE_REI
    If Format(dtData, "dd-mm") = "19-09" Then FeriadoPT = True
    Case VILA_DO_BISPO
    If Format(dtData, "dd-mm") = "22-01" Then FeriadoPT = True
    Case VILA_DO_CONDE
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case VILA_DO_PORTO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case VILA_FLOR
    If Format(dtData, "dd-mm") = "24-08" Then FeriadoPT = True
    Case VILA_FRANCA_DO_CAMPO
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case VILA_NOVA_DE_GAIA
    If Format(dtData, "dd-mm") = "24-06" Then FeriadoPT = True
    Case VILA_NOVA_DE_OUREM
    If Format(dtData, "dd-mm") = "20-06" Then FeriadoPT = True
    Case VILA_NOVA_DE_PAIVA
    If Format(dtData, "dd-mm") = "02-03" Then FeriadoPT = True
    Case VILA_NOVA_POIARES
    If Format(dtData, "dd-mm") = "13-01" Then FeriadoPT = True
    Case VILA_POUCA_DE_AGUIAR
    If Format(dtData, "dd-mm") = "22-06" Then FeriadoPT = True
    Case VILA_PRAIA_VITORIA
    If Format(dtData, "dd-mm") = "20-06" Then FeriadoPT = True
    Case VILA_REAL
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case VILA_REAL_S_ANTONIO
    If Format(dtData, "dd-mm") = "13-05" Then FeriadoPT = True
    Case VILA_VELHA_DE_RODAO
    If Format(dtData, "dd-mm") = "24-08" Then FeriadoPT = True
    Case VILA_VERDE
    If Format(dtData, "dd-mm") = "13-06" Then FeriadoPT = True
    Case VILA_VICOSA
    If Format(dtData, "dd-mm") = "16-08" Then FeriadoPT = True
    Case VIMIOSO
    If Format(dtData, "dd-mm") = "10-08" Then FeriadoPT = True
    Case VINHAIS
    If Format(dtData, "dd-mm") = "20-05" Then FeriadoPT = True
    Case VISEU
    If Format(dtData, "dd-mm") = "21-09" Then FeriadoPT = True
    Case VIZELA
    If Format(dtData, "dd-mm") = "19-03" Then FeriadoPT = True
    Case VOUZELA
    If Format(dtData, "dd-mm") = "14-05" Then FeriadoPT = True

    End Select
    End If
    End Function
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7996
    Registrado : 15/03/2013

    Converter em minutos, diferença entre datas sem feriados Empty Re: Converter em minutos, diferença entre datas sem feriados

    Mensagem  Alvaro Teixeira 2/6/2015, 18:02

    Olá bem vindo ao fórum.
    O link postado não funciona.
    Relativamente à questão, poderia fazer a conversão para minutos para resultado do calculo superior a um dia.
    Correspondendo 1440 minutos por dia completo.
    Depois calcular o restante com base na hora_inicial e hora_final.
    Apenas ideia!
    Abraço

      Data/hora atual: 21/11/2024, 21:18