Boa noite pessoal, tudo certo?
Por motivos de trabalho, estou tentando facilitar a vida da minha equipe.
Nossa situação é a seguinte:
- Temos um equipamento que gera dados de temperatura, tempo, velocidade, potência e outras variáveis;
- Este equipamento cria um arquivo .xls com estas variáveis. Este arquivo fica armazenado na pasta do pc;
- Atualmente, abrimos arquivo por arquivo, copiamos os resultados em uma nova pasta de trabalho, na primeira planilha e tratamos os dados da seguinte forma:
- Na Plan1 fica os dados brutos copiados do arquivo;
- Na Plan2 copiamos apenas a Hora, Temperatura, Velocidade e Potência. Porém, serão calculados Tempo, Frequência e Torque, explicados posteriormente;
- calcular o tempo com base no registro do equipamento (ele registra a cada segundo, mas em formato de hora, sendo necessário fazer uma subtração contínua e fixar a primeira linha da coluna HORA), na PLan2;
- Calcular a frequência com base na velocidade (Velocidade/60), na Plan2;
- Calcular o torque, dependente da potência e frequência (Torque = Potência / 2 * 3,14 * Frequência), na Plan2;
Com estes dados, criamos uma Plan3 para gerar gráficos de dispersão (Temperatura vs Tempo) / (Torque vs Tempo).
Temos também duas etapas de procedimento (etapa1 e etapa2), em que são gerados dois arquivos (um para etapa1 e outro para etapa2);
Até ai tudo bem fazer na mão com apenas 1 amostra. Mas tratamos de 5 a 10, o que leva a uma grande perda de tempo;
Outro detalhe: Seria necessário habilitar a macro para nomear a planilha com o nome da amostra (copiando os dados para ela). Por exemplo: A Plan1 tem os dados brutos da amostra1 - Nomear com Amostra1 - DadosB. Plan2 tem o tratamento - Nomear com Amostra1 - TratD. Plan3 tem os gráficos da amostra1 - Amostra1 - Gráficos.
Basicamente seria isso. A ideia principal é poder selecionar vários arquivos do diretório, tendo, por exemplo, 10 amostras na pasta de trabalho, diversificadas em cada planilha, conforme exemplificado acima (Amostra1 - DadosB - TratD - Gráficos) - (Amostra2 - DadosB - TratD - Gráficos) e assim por diante, de acordo com cada arquivo aberto.
Cheguei a fazer por command button, mas ele busca em especifico um arquivo, o que não é legal, pois teria que ficar modificando o nome dos resultados sempre.
Envio dois anexos: Um no qual consegui fazer a seleção de qualquer arquivo, mas que não copia os dados do equipamento coerentemente, deixando os espaçados por vírgula, mas o ideal seria deixá-los em cada coluna (Ex: Hora, Temperatura, Velocidade, Potência, etc). Nesta pasta, não consegui nomear as planilhas e nem tratar os dados e gráficos conforme explicado. (Este arquivo é o Importação.xslm ... um exemplo de resultado para importação encontra-se no arquivo Teste.csv);
Outro (arquivo LerArquivoCSV) que fiz por command button, especificando um arquivo de teste (Teste2.txt), que gerou os resultados, mas perda de tempo do mesmo jeito devido a mudança de nomes e várias amostras, além de que seria necessário transformação o .xls do equipamento em .txt. Além do que, não consegui adicionar mais de um arquivo por pasta de trabalho, o que não permite realizar análise comparativa! Nesta planilha está mais claro a divisão da nomeação.
É isso pessoal, espero que tenha ficado claro! Qualquer coisa, comentem, ok?
João Paulo G...
Novo Membro
Registrado
1 Mensagem
0 Curtidas
VBA Excel: Como abrir um (ou vários) arquivos a partir do VBA?
#1 Por João Paulo G...
27/09/2016 - 19:04