CSV in una sola colonna su Excel? Perché succede e come risolvere
Quando un CSV si apre con tutto schiacciato nella colonna A, il file usa un separatore diverso da quello che Excel si aspetta: di solito virgole in un file aperto su un computer impostato per il punto e virgola, o viceversa. Ai dati non è successo niente. Aprilo con uno strumento che riconosce il separatore, come il Visualizzatore CSV, oppure indica a Excel quale separatore usare con l’importazione o con la funzione Testo in colonne.
Virgole, punti e virgola e la virgola decimale
«CSV» sta per comma-separated values, valori separati da virgole, ma in pratica il separatore è quello che ha scelto il programma che ha scritto il file. Ecco la stessa riga scritta nei due modi:
Data,Cliente,Importo
2024-03-15,Rossi Srl,1250.50
Data;Cliente;Importo
2024-03-15;Rossi Srl;1250,50
Il motivo della seconda versione è il separatore decimale. In buona parte d’Europa (Germania, Francia, Italia, Spagna, Paesi Bassi, Polonia, Ucraina e molti altri paesi) i numeri si scrivono con la virgola decimale: 1250,50. Se la virgola separasse anche le colonne, 1250,50 verrebbe diviso in due celle. Per questo i programmi per fogli di calcolo di quei paesi usano invece il punto e virgola come separatore di colonna.
Nessuno dei due formati è sbagliato. Sono semplicemente due convenzioni, e i problemi iniziano quando un file scritto con una viene aperto da un programma che si aspetta l’altra. Per saperne di più sul formato, leggi cos’è un file CSV.
Perché Excel mette tutto nella colonna A
Quando fai doppio clic su un file .csv, Excel non esamina il file per capire il separatore. Usa il separatore di elenco delle impostazioni internazionali del sistema operativo. Su Windows questa impostazione segue la tua area geografica: un computer impostato su un paese con la virgola decimale, come l’Italia, di solito ha il punto e virgola come separatore di elenco, mentre uno impostato su Stati Uniti o Regno Unito ha la virgola.
Lo scontro quindi avviene in entrambe le direzioni:
- Un collega negli Stati Uniti ti manda un export separato da virgole; il tuo Excel in italiano si aspetta i punti e virgola e lascia ogni riga intera nella colonna A.
- Il tuo gestionale di contabilità scrive punti e virgola; un collega nel Regno Unito lo apre e vede
Data;Cliente;Importoin un’unica cella.
Lo stesso vale per gli export da servizi web, negozi online e CRM. Molti scrivono sempre le virgole, ovunque tu sia, ed è per questo che chi lavora in Europa si imbatte così spesso nel problema. Un problema simile, le lettere che diventano simboli come é, riguarda la codifica e non il separatore: vedi caratteri strani in un CSV.
Soluzione 1: aprilo con il riconoscimento automatico del separatore
Se ti basta leggere il file (controllare un ordine, cercare un cliente, vedere cosa contiene un export), la via più rapida è un visualizzatore che capisce da solo il separatore.
Il Visualizzatore CSV di Opener esamina il file, rileva se è separato da virgole, punti e virgola, tabulazioni o barre verticali e poi mostra una tabella vera. Rileva anche la codifica del testo (UTF-8, Windows-1251 o Windows-1252) e gestisce i valori tra virgolette che contengono il separatore, come "Rossi, Mario". Niente da configurare, nessun account, e il file resta nel tuo browser: non viene mai caricato. Puoi cercare, ordinare ed esportare il risultato in CSV o JSON.
Soluzione 2: usa l’importazione di Excel o Testo in colonne
Se vuoi lavorare sui dati in Excel, invece di fare doppio clic indica tu quale separatore usare.
Importazione da testo/CSV. Apri una cartella di lavoro vuota, vai alla scheda Dati e scegli «Da testo/CSV». Excel mostra un’anteprima con un elenco Delimitatore: scegli Virgola o Punto e virgola finché le colonne non appaiono corrette, poi carica i dati. Nella stessa anteprima puoi impostare la codifica del file se le lettere appaiono storpiate.
Testo in colonne. Se i dati sono già tutti nella colonna A:
- Seleziona la colonna A.
- Nella scheda Dati, scegli Testo in colonne.
- Scegli l’opzione per i dati delimitati, poi spunta il separatore usato dal tuo file (per esempio punto e virgola o virgola).
- Completa la procedura guidata.
Con entrambi i metodi fai attenzione ai formati numerici. Un file con 1250.50 aperto su un sistema con la virgola decimale può leggere l’importo come testo o come un numero sbagliato. L’anteprima dell’importazione e l’ultimo passaggio della procedura Testo in colonne ti permettono di stabilire come interpretare le colonne: controlla qualche importo prima di fidarti dei totali.
Soluzione 3: aggiungi una riga «sep=» per Excel
Esiste un trucco che funziona solo in Excel: aggiungere in cima al file una riga che indica il separatore.
sep=;
Data;Cliente;Importo
2024-03-15;Rossi Srl;1250,50
Apri il file in un semplice editor di testo, aggiungi sep=; (oppure sep=, per un file con le virgole) come prima riga, salva e fai di nuovo doppio clic. Excel legge l’indicazione, usa quel separatore e non mostra la riga.
È un espediente, non uno standard. Gli altri programmi (Fogli Google, LibreOffice, database, script) non conoscono sep= e di solito lo mostrano come una prima riga in più o lo trattano come intestazione. Usalo solo per file destinati esclusivamente a chi usa Excel.
Soluzione 4: Fogli Google, LibreOffice o le impostazioni internazionali
Fogli Google. Usa File → Importa e carica il CSV. La finestra di importazione ha un’opzione per il tipo di separatore: puoi lasciare il rilevamento automatico o scegliere tu il separatore, anche un carattere personalizzato.
LibreOffice Calc. Quando apri un CSV, LibreOffice mostra una finestra di importazione del testo con caselle per virgola, punto e virgola, tabulazione e altri separatori, e un’anteprima in tempo reale. È gratuito per Windows, macOS e Linux.
Cambiare il separatore di elenco di Windows. Nelle impostazioni internazionali del classico Pannello di controllo, tra le impostazioni aggiuntive c’è il campo Separatore di elenco. Se lo imposti sulla virgola, Excel apre direttamente con il doppio clic i file separati da virgole. Usalo con cautela: è un’impostazione di sistema, quindi cambia anche il modo in cui Excel separa gli argomenti delle funzioni nelle formule e il modo in cui altri programmi leggono e scrivono i file CSV. Se condividi file con colleghi in Italia, inizieranno a ricevere da te file con le virgole. Per la maggior parte delle persone, i metodi di importazione descritti sopra sono più sicuri.
Domande frequenti
Perché lo stesso CSV si apre bene sul computer del mio collega?
Le sue impostazioni internazionali usano un separatore di elenco diverso. Excel usa quell’impostazione quando fai doppio clic su un CSV, quindi lo stesso file può aprirsi correttamente su un computer e finire in un’unica colonna su un altro.
Devo salvare i miei CSV con le virgole o con i punti e virgola?
Dipende da chi li apre. Per altri programmi, script e colleghi all’estero, la virgola è l’impostazione predefinita più diffusa. Per chi usa Excel nei paesi con la virgola decimale, il punto e virgola si apre direttamente. Se puoi, chiedi al destinatario.
Perché alcune righe hanno ancora il numero sbagliato di colonne?
Di solito perché un valore contiene il separatore stesso, per esempio la ragione sociale di un’azienda con una virgola che non è stata racchiusa tra virgolette. I visualizzatori e gli strumenti di importazione che seguono le regole di quotatura del CSV gestiscono i valori tra virgolette; quelli senza virgolette vanno corretti all’origine.
Il Visualizzatore CSV funziona con file separati da tabulazioni o da barre verticali?
Sì. Il Visualizzatore CSV rileva automaticamente virgole, punti e virgola, tabulazioni e barre verticali e apre file .csv, .tsv e .txt.