Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#11402
Olá a todos!!!
Eu todos os dias tenho de ordenar e agrupar uma lista de dados de clientes de turismo com os seus dados e organizar em vários serviços de transportes para os ir buscar ao aeroporto leva-los para os seus respectivos hotéis.

Em anexo tenho um exemplo de um ficheiros desses com a lista na folha "chegadas".

O processo explicado de forma geral é o seguinte:

Chegadas:
1- Ordenar por coluna VOO de A a Z.
2- Agrupa por zona do hotel (presente na folha "hoteis info")
3- Agrupa até um máximo de 8 Pax (capacidade máxima do veiculo)
4- Criar trajeto mais curto tendo em conta os hotéis desse serviço, tendo o aeroporto como ponto de partida.

Na folha "chegadas-2" tenho os passos de 1 a 3 feitos.
NOTA: Há 3 casos que não entram no agrupamento por 8:
Campo obs: S/TRSF (cliente não tem transfer), quando o campo VOO está vazio e C/PRIVILEGE ( cliente tem um transfer privado, só para ele)

Para o passo 4 pensei em criar uma matriz como a que está na folha "distâncias" (incompleto sem todos os hoteis)
E utilizar uma solução como o deste vídeo: https://www.youtube.com/watch?v=-E3rSoClgMI
Ou seja algo que ordenasse as linhas de cada serviço criando a rota mais curta desde do aerporto (ponto de origem)

A minha questão é possível fazer isto no excel de forma automática com VBA e/ou formulas?

Agradeço desde de já a vossa ajuda!!!
#11405
Olá operador84

Procurei desenvolver um pouco mais sua planilha, espero q ajude de alguma forma.

Na primeira guia 'chegadas' eu acrescentei mais uma coluna q seria bastante útil na guia acrescentada 'Chegadas TD' (TD de tabela dinâmica). Esta coluna faz a busca na guia 'distancias' da distância do aeroporto até o hotel, mas como infelizmente essa tabela encontra-se incompleta poucos resultados retornaram e eu acabei não a acrescentando na tabela dinâmica da guia 'Chegadas TD', muito embora considere q essa coluna seria muito útil p/ ordenação dos hotéis mais próximos. Tb transformei a sua lista numa Tabela reconhecida pelo Excel e a nomeei TabChegadas e esse nome foi utilizado na Tabela Dinâmica da guia 'Chegadas - 2'.

Na guia 'hoteis info' eu acrescentei mais duas colunas com hiperlink p/ o google maps, uma trazendo a localização do hotel no mapa e outra mostrando a distância entre o aeroporto e o hotel p/ fins de catalogação. Penso q ainda q as coordenadas sejam úteis o cálculo da distância entre o aeroporto e o hotel pelo google maps seja uma estimativa mais realista e q vale a pena ser catalogada p/ um número restrito de hotéis. (A ser feito por vc)

Na guia 'chegadas - 2' considero q as colunas J e K são redundantes com as colunas já existentes na guia 'chegadas' e q pouco acrescentam.

Nova guia 'Chegadas TD', nesta nova guia eu alterei a ordem das colunas p/ um ordenamento mais significativo. A primeira coluna ficou sendo a hora, pois penso q esta seja a principal informação p/ ser utilizada na organização do transporte até o hotel. Esta tabela é filtrada pelo dia na célula B1. Penso q as colunas [Op Nome], [DIA] e [K] poderiam ser descartadas desta tabela dinâmica, pois não aparentam trazer uma informação relevante (Será?). A coluna H pode ser utilizada p/ filtrar passageiros sem transfer ou outras situações especiais. As colunas J:O parecem dar um bom ordenamento p/ o q vc precisa, muito embora não separe os passageiros de 8 em 8 como vc pediu.
Um melhor ordenamento dos hotéis poderia ser atingido se as distâncias entre os hotéis e o aeroporto já estivessem catalogadas, melhorando a distribuição automática dos passageiros. Esta planilha realiza um subtotal a cada horário de voo.
#11767
Ola DJunqueira,
estive fora uma semana, e é por isso que estou respondendo só agora...
Muito obrigado pela sua ajuda e dicas foram muito úteis!!

Pois a questão de agrupar de 8 em 8 e depois criar a melhor rota, é que é o mais complicado! Secalhar só com VBA não?
#11780
Penso q é possível fazer algo mais com funções, mas p/ isso seria interessante q vc decidisse se vc irá completar a distância do aeroporto até os hotéis pelo Google Maps ou prefere fazer por coordenadas.
E vou viajar por 1 semana tb, então pode ser q outra pessoa faça o q vc quer.
#12177
Olá Operador84, preparei um novo avanço na sua planilha q agora puxa distância e tempo de deslocamento direto do Google p/ a planilha, mas p/ prosseguir avançando com ela irei trabalhar com a versão mais recente do Office 2016.
Na planilha anexa a essa mensagem vc terá todos os hotéis catalogados com a distância e tempo de deslocamento do aeroporto. Tentei calcular a distância utilizando o sistema de coordenadas, mas elas se mostraram inconstantes e não confiáveis, penso q o sistema q montei embora não seja a prova de bala é confiável o suficiente p/ continuar trabalhando baseado nele.
#12229
Olá operador84, consegui fazer como vc queria agrupando a tabela dinâmica por 8 passageiros. Na tabela .xls aba Chegadas TD célula L3 vc pode filtrar por ZONA o q eventualmente auxilia na organização da lista de transporte. Na versão p/ Office 2016 essa filtragem pode ser feita com o uso de segmentador de dados (slicer).
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord