O comportamento do Excel ao abrir ficheiros CSV depende muito das suas configurações locais e dos list separator
em Region and language » Formats » Advanced
utilizados. Por defeito, o Excel assume que cada CSV foi guardado com esse separador. O que é verdade desde que o CSV não venha de outro país!
Se os seus clientes estão noutros países, podem ver outros resultados, então você pensa.
Por exemplo, aqui você vê que um Excel alemão usará ponto e vírgula em vez de vírgula como nos EUA
Para o confundir ainda mais, essa configuração interfere com o símbolo decimal que pode ser configurado separadamente em Excel Options » Advanced » Use system separators
ou através de configurações regionais como mostrado acima. O Excel não pode usar o mesmo símbolo como separador decimal e separador de lista. Irá utilizar automaticamente vírgula ou ponto e vírgula como separador de reserva. Leia mais
Vou pegar seu exemplo para criar 3 arquivos. Cada um com um separador diferente e abri-lo com Excel.
COMMA SEMICOLON TAB
Não é o mesmo que o seu Excel faz? Eu pensei que sim.
Então vamos alterar manualmente a extensão dos mesmos ficheiros CSV para XLS e ver o que acontece agora. Primeiro, o Excel vai lançar um aviso de que a extensão do ficheiro não corresponde ao conteúdo e o Excel tenta adivinhar o que está lá dentro.
COMMA SEMICOLON TAB
Conclusion: TAB + renomear + ignorar aviso = Ganhar em todos os sistemas?
Talvez, mas eu não teria tanta certeza para clientes fora do seu próprio país.
O melhor método é instruir os seus clientes para primeiro abrirem um Excel em branco e depois irem para Data » Get data from text
e seleccionarem manualmente a vírgula como separador