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
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