Como criar um gráfico a partir de arquivos de dados brutos em qualquer equipamento de escritório

Não seria bom ter a capacidade de simplesmente abrir uma planilha Excel ou um documento do Word, e sem ter que fazer qualquer coisa, os dados é lido diretamente de um texto ou arquivo de dados CSV e cargas diretamente em um gráfico incorporado em sua planilha ou documento do Word? Esta é uma forma de automação usando produtos do Office, porque se é possível automatizar o mapeamento de dados no Office, basta pensar nas possibilidades. Você pode carregar automaticamente os dados em um gráfico de um relatório que você está colocando em conjunto para o seu chefe - nenhuma entrada de dados necessário. Ou você pode carregar dados em um gráfico diretamente em um e-mail no Outlook.

A técnica para alcançar este objetivo envolve instalar o add-in Office Web Components. Além disso, você só precisa configurar algumas coisas dentro do aplicativo do Office que você deseja usar para importar os dados, e você está pronto para começar a automatizar o seu trabalho de relatórios. Eu cobri alguns dos elementos que nós vamos usar neste artigo na anterior artigos VBA aqui no MakeUseOf. Alguns dos incluídos passando dados entre aplicações com a área de transferência, exportador tarefas do Outlook para o Excel, e envio E-mails de um Excel roteiro.Como você pode fazer sua própria simples App Com VBAComo você pode fazer sua própria simples App Com VBAPara aqueles de vocês que realmente gostaria de ser capaz de escrever sua própria aplicação, mas nunca ter digitado uma única linha de código antes, eu vou levá-lo através de fazer o seu muito ...consulte Mais informação

O que eu vou mostrar para você é como combinar o Office Web Components com scripts arquivo de texto para criar um fluxo sem costura, automatizada de dados de um arquivo de texto simples no seu computador para o produto Office (no nosso caso Excel). Você pode usar a mesma técnica - com algumas pequenas modificações - no Word, Outlook, ou mesmo PowerPoint. Qualquer produto Office (ou qualquer outro produto para essa matéria) que tem um back-end VBA para desenvolvedores, permitirá que você usar esta técnica.

Importação e criar um gráfico a partir de arquivos de dados

Antes de criar um gráfico a partir de arquivos de dados, você precisa habilitar algumas coisas primeiro. Neste exemplo, eu vou mostrar-lhe como ativar esses recursos em Excel, mas o processo é quase idêntico em todos os outros produtos Office.

Em primeiro lugar, antes que você pode fazer qualquer desenvolvimento VBA, você precisa ativar a guia desenvolvedor na barra de ferramentas (se você não tiver). Para fazer isso, basta ir no menu Opções, clique em “Fita Personalizar” e ativar a guia “Desenvolvedor”.

criar um gráfico

Video: Como Fazer Tabelas e Gráficos no Excel (3-4) (Cruzamentos de Dados) #23

Back in Excle, agora você vai ver “Developer” aparecem nos menus. Clique nele e clique em “Modo Design”. Em seguida, clique em “Exibir código” para ver o editor VBA.

Dentro do editor é onde você precisa ativar as referências que você vai precisar para o código que estou indo dar-lhe a trabalhar. Certifique-se de que você instalou o Office Web Components add-in antes de fazer isso, caso contrário, o objeto gráfico do Microsoft não estará disponível.

criar gráfico
Clique em Ferramentas e, em seguida, referências, e você verá uma lista de todas as referências que estão disponíveis em seu sistema. Se você não sabe o que é isso - referências são basicamente bibliotecas de código e objetos que você pode puxar para o seu próprio projeto. Estes sistemas permitem fazer algumas coisas muito legais, dependendo do que referência que você habilitar. Se você acabou de instalar o Office Web Components em seu sistema, você precisa adicioná-lo como uma nova biblioteca, então clique no botão Procurar para localizar o arquivo .dll correta.

criar gráfico

Se você já instalou o Office Web Components, em seguida, o arquivo DLL é chamado OWC11.dll, e é armazenado em c: Arquivos de programas Arquivos comuns Microsoft componentes da Web compartilhados 11
criar gráfico

Clique na caixa para o “Microsoft Office Web Components 11.0” de referência, e também não se esqueça de selecionar “Microsoft Scripting Runtime”, bem como, que lhe dará acesso para ler ou escrever a partir de arquivos de dados.

Agora que você adicionou a referência, é hora de adicionar o gráfico real para a sua folha. No Excel, você pode adicionar controles clicando em “Inserir” no menu Developer, e clicar no ícone de pequenas ferramentas no canto em “Controles ActiveX”.



Desloque-se para “Microsoft Office Chart 11.0” e clique em OK.
criar um gráfico livre

Nós estamos finalmente começando a trabalhar. Aqui está o que o gráfico MS Web Component parece incorporado em uma planilha. Ele vai olhar o mesmo incorporado em um documento do Word ou qualquer outra coisa.

Video: Como Fazer Tabelas e Gráficos no Excel (1-4) (Banco de Dados) #21

criar um gráfico livre
Assim, no caso do Excel, eu quero o gráfico para carregar instantaneamente os dados do arquivo de dados ao abrir o ficheiro de livro. Para fazer isso, você vai para o editor de código clicando em “View Code” no menu Developer, e duplo clique sobre a pasta de trabalho para ver o código livro. Alterar a lista suspensa direito de “Abrir”. Este é o script que será executado quando o arquivo de pasta de trabalho é aberto pela primeira vez.

criar um gráfico livre
Para carregar o gráfico com dados de código, o gráfico em si precisa de um nome. Volte para a planilha, clique direito sobre o gráfico e escolha Propriedades. Você verá o campo “Nome” com algo como “ChartSpace1”. Você pode alterar isso para qualquer coisa. Eu chamei meu “MyChart”.

Além disso, só assim você sabe o que o arquivo de dados é como - o meu é um arquivo de texto preenchido com valores de dados em formato delimitado por vírgulas. Este arquivo pode ser qualquer coisa - dados de laboratório exportados a partir de sensores, informações financeiras digitado no arquivo manualmente por estagiários, ou qualquer outra coisa em tudo. Você vai estar lendo o arquivo com o seu código, de modo que não importa o que os dados parece, desde que você saiba o que cada linha será semelhante quando o programa lê-lo.
criar um gráfico
Então, agora vem a parte divertida. Vou mostrar-lhe o código em seções pequenas portanto, não é esmagadora, e explicar o que o código faz. A parte superior do código é primeiro vai ler em todos os valores do arquivo de texto e armazená-los em dois arrayx, um para x variáveis ​​(XVAR) e um para as variáveis ​​y (yvar).

Dim fso As New FileSystemObjectDim fnumDim MeuArquivo Como StringDim strDataLine Como StringDim XVAR () Como VariantDim yvar () Como VariantDim intNumOfLines Como IntegerMyFile = "c: arquivos myData.txt"fnum = FreeFile () Abrir MeuArquivo Para entrada como # 1intNumOfLines = 0Do Enquanto não EOF (1) intNumOfLines = intNumOfLines + 1Input # 1, strDataLineInput # 1, strDataLineLoopClose # 1ReDim XVAR (intNumOfLines) ReDim yvar (intNumOfLines) MeuArquivo Open For Input As # 1intNumOfLines = 0Do Enquanto não EOF (1) entrada # 1, XVAR (intNumOfLines) Input # 1, yvar (intNumOfLines) intNumOfLines = intNumOfLines + 1LoopClose # 1

Este código basicamente atravessa o arquivo de dados duas vezes - a primeira vez para dimensionar as matrizes de modo que eles são o comprimento exato necessário para armazenar os dados, e depois uma segunda vez para ler os dados para essas matrizes. Se você não sabe o que uma matriz é - é uma variável ou uma área de armazenamento que conterá uma longa lista de valores que podem ser acessados ​​usando a fim de que o valor foi armazenado no array. A um terceiro carregado seria (3), por exemplo.

Video: Gráficos com Python e Matplotlib #2: Lendo de um arquivo e plotando um gráfico

Agora que você tem duas dessas matrizes carregadas com todos os valores de seu arquivo de dados, você está pronto para carregar esses valores no gráfico que você já incorporado. Aqui está o código que faz isso.

Com Sheet1.MyChart.Clear.RefreshSet oChart = .Charts.AddoChart.HasTitle = TrueoChart.Title.Caption = "Meus valores de dados"`OChart.Interior.Color = "azul"oChart.PlotArea.Interior.Color = "branco"Definir oSeries = oChart.SeriesCollection.AddWith oSeries.Caption = "Meus valores de dados".SetData chDimCategories, chDataLiteral, xVar.SetData chDimValues, chDataLiteral, yVar.Line.Color = "azul".Line.DashStyle = chLineDash.Line.Weight = 2.Type = chChartTypeLineEnd WithoChart.HasLegend = TrueoChart.Legend.Position = chLegendPositionBottomEnd Com

É o “Sheet1.MyChart” que liga o código para o gráfico real que você já incorporado. É com base no que você é chamado. Este será o caso quando você incorporá-lo no Word, Powerpoint, ou qualquer outro produto Office. Você não vai ser referindo-lo usando “Sheet1”, mas em vez disso tudo o elemento detém o Chart, nesse caso, como “document1” no Word, por exemplo.

Video: Mc5 - Edição de arquivo 30FPS + Gráfico bom

O código acima, em seguida, ajusta-se a rotulagem e coloração do gráfico, e, em seguida, carrega os valores usando o método “.setdata” para ambos os valores de x e y do conjunto de dados de duas dimensões. Uma vez que o código acima é feito em execução, o gráfico a seguir irá aparecer.
criar um gráfico

Esta informação é em linha reta fora do arquivo de texto. A única desvantagem é que os arquivos de dados teria de ser bidimensional somente se você quiser usar o código acima. Você pode adicionar mais valores para o conjunto de dados, mas você precisa modificar o código acima para ler no terceiro valor cada vez através do loop, e, em seguida, duplicar a seção “SeriesCollection.Add” para criar uma outra série e, em seguida, adicioná-lo para o gráfico da mesma maneira.

Pode parecer complexo apenas lendo o código acima, mas uma vez que você tenha feito um desses, é um pedaço de bolo para modificá-lo para o que são as suas necessidades. Você poderia usar o mesmo gráfico e código semelhante para criar um gráfico de barras, um gráfico de dispersão, ou qualquer outro tipo de gráfico que você deseja usar este mesmo objeto. É versátil e flexível - e é uma ferramenta poderosa em seu arsenal se você tiver um fã do companheiro de automação para uma maior produtividade.

Brincar com o código acima e veja se você consegue os dados auto-carga em suas aplicações. Que usos criativos que você pode pensar-se para este tipo de automação? Compartilhe seus pensamentos e comentários na seção de comentários abaixo!


Artigos relacionados