Ir para o conteúdo
OneKitly

Um evento recorrente é uma linha do CSV, não doze

Publicado a 07/09/2026 · 5 min de leitura · Ferramentas de ficheiros

Daniel Okonkwo

Daniel OkonkwoProgramador front-end e redator de Tecnologia na OneKitly

Desempenho web · Formatos de ficheiro

Verificado a partir de 3 fontes

Ver perfil
Em resumo

O iCalendar não guarda as ocorrências de um evento repetido. Guarda um único VEVENT e uma regra de recorrência — RRULE:FREQ=WEEKLY;BYDAY=TU;COUNT=12 — e é cada aplicação de calendário que desdobra essa regra no ecrã. Passando o conversor por um ficheiro com quatro VEVENT, um deles essa reunião semanal de doze ocorrências, saem quatro linhas: as doze terças não estão em lado nenhum do ficheiro. O CSV tem oito colunas — resumo, início, fim, local, descrição, organizador, estado, uid — e nenhuma é uma regra de recorrência: a série só sobrevive pela sua primeira data. Se precisares de uma linha por ocorrência, desdobra a série no calendário e exporta o resultado; se precisares de guardar a regra, fica em iCalendar e usa o visualizador .ics ou a exportação JSON, que a transmitem intacta.

Um ficheiro .ics guarda uma reunião semanal uma só vez, com uma regra anexa. Ao exportar para CSV obténs uma linha para toda a série — é o ficheiro a ser honesto, não o conversor a perder linhas.

O que contém realmente um ficheiro de calendário

Abre um .ics num editor de texto: é uma lista de blocos, cada um de BEGIN:VEVENT a END:VEVENT, com um início, um fim, um título e mais algumas propriedades. Um compromisso repetido é um desses blocos mais uma única linha, RRULE, que diz como se repete. Doze pontos semanais são doze linhas no ecrã e um bloco em disco, e as doze datas são calculadas por aquilo que as mostra.

Esse desenho é o que permite a um calendário guardar um aniversário repetido para sempre em algumas dezenas de bytes, e o que faz com que mover uma só ocorrência de uma série seja uma propriedade à parte, RECURRENCE-ID, em vez da edição de uma linha. É também o que impede um conversor de inventar as ocorrências sem se tornar ele próprio um motor de calendário — com os anos bissextos, os saltos de hora de verão e as datas de exceção que isso implica.

As oito colunas, e o que fica de fora

A exportação escreve resumo, início, fim, local, descrição, organizador, estado e uid — por essa ordem, uma linha por VEVENT. Uma folha de cálculo é um retângulo, e tudo o que um evento carrega que não seja um valor único por evento não tem para onde ir: a regra de recorrência, os alarmes, a lista de participantes, os anexos, o fuso em que o início foi escrito. Guarda o .ics se algum desses elementos importar; o CSV serve para ler, ordenar e contar, não para arquivar.

Conseguir uma linha por ocorrência, quando é mesmo preciso

Pede ao calendário para fazer o desdobramento: só ele conhece as tuas datas de exceção. No Google Agenda, no Outlook e no Calendário da Apple o caminho fiável é o mesmo: passa para a vista de lista ou agenda sobre o período que te interessa, seleciona o intervalo e exporta ou imprime isso — uma vista já está desdobrada, por isso o que sai dela é uma linha por ocorrência. Exportar o calendário em si devolve-te a forma compacta, regra incluída.

O outro sentido também vale a pena conhecer: se construíres um .ics a partir de uma folha onde já escreveste cada data, obténs exatamente os eventos que listaste, sem regra anexa. É em geral o que se quer para um calendário de sessões pontuais, e é uma má forma de guardar uma reunião semanal permanente, que serão então doze elementos distintos a mover se a hora mudar.

Um ficheiro .ics, quatro VEVENT, quatro linhas — e o que cada uma guarda
Evento do ficheiroEscrito comoLinhas no CSVPerdido pelo CSV
Reunião de equipa, 7 set., 14:00-15:30 ParisDTSTART;TZID=Europe/Paris1O fuso nomeado
Natal, dia inteiroDTSTART;VALUE=DATE1Que é um dia, não um instante
Ponto semanal, 12 terçasRRULE:FREQ=WEEKLY;COUNT=121, não 12A própria regra
Pontual, título dobrado em duas linhasDobrado segundo a RFC 55451Nada
ICS para CSVTransforme um ficheiro de calendário numa tabela de eventos, com datas reais.Experimentar a ferramenta

Perguntas frequentes

O meu CSV tem menos linhas do que o calendário mostra. O conversor está avariado?
Quase de certeza que não — conta os teus eventos repetidos. Cada um é um único VEVENT no ficheiro por muitas vezes que apareça no ecrã, por isso um calendário que mostra 60 compromissos pode ser um ficheiro com 12. Abre o .ics no visualizador e compara o seu número de eventos com o número de linhas do CSV: se coincidirem, nada se perdeu na conversão.
Posso editar o CSV e voltar a transformá-lo em calendário?
Sim, e essa ida e volta é a razão de ser das duas ferramentas — mas volta como eventos pontuais. Uma série exportada numa linha e reimportada é um compromisso único: a regra nunca esteve na folha. Edita aí títulos, horários e locais à vontade; refaz as recorrências no calendário depois.
Que ferramenta conserva a regra de recorrência?
O visualizador .ics e a exportação JSON mostram-na, e a fusão de ficheiros .ics conserva-a, porque os três ficam dentro do iCalendar. Só o CSV a deixa cair, e apenas porque uma coluna de folha de cálculo não a pode levar. Se o teu trabalho é inspecionar ou mover calendários mais do que contá-los, prefere esses três e guarda o CSV para quando quiseres mesmo uma tabela.
O meu calendário é enviado para algum lado?
Não. O ficheiro é lido no teu navegador e o CSV é construído aí; nada sai da máquina. Isso conta mais para um calendário do que para a maioria dos ficheiros, porque uma agenda é um mapa de quem encontras e onde estás — precisamente o género de coisa que convém converter sem a entregar a um servidor.

Artigos que podem interessar-lhe

Todos os guias
ExplicaçãoO mesmo ficheiro .ics pode designar cinco horas diferentesO iCalendar escreve uma hora de início de três maneiras, e só uma é inequívoca. Uma reunião escrita com um fuso nomeado, convertida em máquinas de Paris, Nova Iorque e Honolulu, abrangeu dezanove horas e mudou de dia.ExplicaçãoPorque é que o seu CSV parte os acentos e as datas no ExcelTrês avarias completamente diferentes escondem-se atrás da mesma frase. Uma é a codificação, outra o separador, outra o Excel a adivinhar tipos enquanto abre o ficheiro — e o remédio é diferente para cada uma. Eis como distingui-las em cinco segundos.ExplicaçãoUm .mbox são mensagens coladas umas a seguir às outras, e a cola é uma linhaUm ficheiro, milhares de mensagens, separadas por uma linha que começa por From. O formato tem uma fraqueza famosa, e é a razão pela qual uma mensagem pode perder o seu fim sem que nada assinale um erro.ExplicaçãoUm anexo cresce um terço dentro do e-mailO correio transporta os ficheiros em texto, três bytes escritos em quatro caracteres. Um anexo de 10 MiB ocupa 13,68 MiB da mensagem, pelo que um limite de 25 MB significa na realidade cerca de 18 MiB de ficheiros.TutorialAbrir um ficheiro .eml sem avisar o remetenteUma mensagem guardada é um ficheiro de texto legível em qualquer lado. O senão é que abri-la em algo que carrega imagens remotas anuncia o momento em que o fizeste — é precisamente para isso que serve um píxel de rastreio.ExplicaçãoConverter fórmulas em valores guarda a resposta em cache, não o cálculoUm ficheiro de folha de cálculo guarda ao mesmo tempo a fórmula e a última resposta calculada pelo Excel. Retirar a fórmula deixa a resposta guardada — e deixa um vazio onde o ficheiro nunca levou nenhuma.

Ferramentas relacionadas

Fontes

Detetaste um erro neste artigo?