Uno dei difetti di Microsoft Excel è la dimensione limitata di un foglio di calcolo. Se hai bisogno di rendere il tuo file Excel più piccolo o dividere un file CSV di grandi dimensioni, continua a leggere!
Microsoft Excel è eccellente in così tante attività quotidiane. Ma di tanto in tanto, incontri uno dei suoi difetti: la dimensione di un foglio di calcolo. Continua a leggere per scoprire come ridurre le dimensioni di un foglio di calcolo Excel o dividere un file CSV di grandi dimensioni in più file.
Perché dividere un CSV di grandi dimensioni in più file?
Potresti pensare: “Perché dovrei dividere un file Excel di grandi dimensioni in più file più piccoli?” È una domanda interessante, soprattutto perché Excel ha un limite di righe di fogli di calcolo di 1.048.576.
Oltre 1 milione di righe suona fenomenale. Tuttavia, raggiungere il limite di riga è più facile di quanto si pensi, specialmente durante determinate attività. Ad esempio, se stai facendo marketing via e-mail, potresti importare un file CSV contenente milioni di indirizzi e-mail.
L’unico problema è, come gestisci un foglio di calcolo con così tanti indirizzi? Inoltre, cosa succede se qualcuno ti invia un CSV che è già oltre il limite (da un altro programma)?
Se questo sembra un problema che probabilmente dovrai affrontare, dai un’occhiata ai seguenti cinque modi per dividere un file CSV o Excel di grandi dimensioni in più file più piccoli.
Non hai un file CSV di grandi dimensioni a portata di mano ma vuoi giocare a casa? Sto usando il set di dati di ricerca aperto COVID-19 negli esempi, che puoi anche scaricare e utilizzare.
1. Suddividi i file CSV utilizzando un programma
Ci sono diversi utili programmi di splitter CSV là fuori. Ecco due dei migliori. Giusto avvertimento, tuttavia, poiché questi programmi funzionano, a volte si imbattono in problemi di memoria, che è un problema comune per i programmi di divisione CSV.
Enorme Splitter CSV gratuito
Free Huge CSV Splitter è uno strumento di divisione CSV di base. Immettere il file CSV che si desidera dividere, il conteggio delle righe che si desidera utilizzare e quindi selezionare Dividi file. Il conteggio delle righe determina il numero di file di output con cui si finisce.
CSV Splitter
CSV Splitter è il secondo strumento. Offre più o meno la stessa funzionalità di Free Huge CSV Splitter, anche se con un design leggermente più elegante. Divide rapidamente il tuo CSV in piccoli blocchi, permettendoti di determinare il conteggio delle righe che desideri utilizzare.
2. Utilizzare un file batch
Successivamente, crea un file batch programmabile. È possibile utilizzare un file batch per elaborare il CSV in blocchi più piccoli, personalizzando il file per fornire blocchi diversi.
Aprire un nuovo documento di testo, quindi copiare e incollare quanto segue:
@echo off
setlocal ENABLEDELAYEDEXPANSION
REM Edit this value to change the name of the file that needs splitting. Include the extension.
SET BFN=HCAHPSHospital.csv
REM Edit this value to change the number of lines per file.
SET LPF=2500
REM Edit this value to change the name of each short file. It will be followed by a number indicating where it is in the list.
SET SFN=HosptialSplitFile
REM Do not change beyond this line.
SET SFX=%BFN:~-3%
SET /A LineNum=0
SET /A FileNum=1
For /F "delims==" %%l in (%BFN%) Do (
SET /A LineNum+=1
echo %%l >> %SFN%!FileNum!.%SFX%
if !LineNum! EQU !LPF! (
SET /A LineNum=0
SET /A FileNum+=1
)
)
endlocal
Pause
Sarà necessario configurare il file batch prima dell’esecuzione. Ti dirò cosa fa ogni comando e puoi modificarlo in base alle dimensioni del tuo file batch e all’output richiesto.
- “SET BFN=” dovrebbe puntare al CSV che devi scomporre
- “SET LPF=” è il numero di righe a cui desideri limitare il nuovo file
- “SET SFN=” è il nuovo schema di denominazione per i file divisi
Dopo aver inserito le variabili, vai su File > Salva con nome. Scegli un nome file e seleziona Salva. Quindi, selezionare il file di testo appena salvato e premere F2 per rinominarlo. Sostituire l’estensione .txt con .bat e premere OK quando viene visualizzato l’avviso. Ora puoi dividere il tuo file CSV di grandi dimensioni in file di output più piccoli.
3. Usare uno script powershell per suddividere un file CSV
È possibile utilizzare i file batch per un’ampia gamma di attività quotidiane. Ma gli script di PowerShell sono più veloci, soprattutto per questo tipo di elaborazione e divisione.
Lo script seguente taglia rapidamente il tuo CSV di grandi dimensioni in file più piccoli.
Innanzitutto, premi CTRL + X per aprire il menu di Windows Power, quindi seleziona PowerShell. Se PowerShell non è un’opzione, inserisci powershell nella barra di ricerca del menu Start e seleziona la migliore corrispondenza.
Ora, copia e incolla il seguente script:
$InputFilename = Get-Content 'C:\file\location'
$OutputFilenamePattern = 'output_done_'
$LineLimit = 50000
$line = 0
$i = 0
$file = 0
$start = 0
while ($line -le $InputFilename.Length) {
if ($i -eq $LineLimit -Or $line -eq $InputFilename.Length) {
$file++
$Filename = "$OutputFilenamePattern$file.csv"
$InputFilename[$start..($line-1)] | Out-File $Filename -Force
$start = $line;
$i = 0
Write-Host "$Filename"
}
$i++;
$line++
}
Sostituisci il percorso del file nella prima riga con il file CSV, quindi esegui lo script. Lo script restituisce i file CSV più piccoli nella directory utente. Ad esempio, i miei file CSV si trovano in C:\Users\Gavin con il nome del file output_done_1.csv. È possibile modificare il nome di output modificando la riga $OutputFilenamePattern = ‘output_done_’.
4. Suddividere un file CSV di grandi dimensioni usando Power Pivot
La tua penultima soluzione per suddividere un file CSV di grandi dimensioni in piccoli bit in realtà non lo scompone. Piuttosto, consente di caricare il file CSV di grandi dimensioni in Excel e di usare lo strumento Power Pivot per aprirlo. Esatto; è possibile ignorare efficacemente il limite di riga di Excel e gestire il file all’interno del programma.
A tale scopo, creare un collegamento dati al file CSV, quindi utilizzare Power Pivot per gestire il contenuto. Per una spiegazione completa e un tutorial, leggi il blog di Jose Barreto che descrive in dettaglio il processo.
In breve, Barreto crea una tabella pivot utilizzando “fino a 8,5 milioni di righe senza alcun problema”. L’immagine sopra proviene dal post del blog, mostrando un totale di 2 milioni di righe in uso in Excel.
Ricorda, questo processo non divide il CSV in piccoli blocchi. Tuttavia, significa che puoi manipolare il CSV in Excel, che è un’alternativa molto utile. Se hai bisogno di ulteriori suggerimenti, scopri come utilizzare una tabella pivot per l’analisi dei dati.
5. Suddividi CSV di grandi dimensioni online utilizzando Split CSV
Ci sono anche servizi online che rompono il tuo grande file CSV in bit più piccoli. Una di queste opzioni è Split CSV, uno splitter CSV online gratuito.
Split CSV ha gestito bene il set di dati COVID-19, suddividendolo in utili blocchi. Come con altri strumenti, si definisce il conteggio delle righe per ogni file e lo si lascia dividere. Tuttavia, non avevo un file CSV di grandi dimensioni a portata di mano con cui testare e, come tale, la tua esperienza può variare.
Split CSV include anche opzioni premium. Per una quota di abbonamento, è possibile utilizzare un delimitatore personalizzato, scegliere una selezione di tipi di file di output, rimuovere determinati caratteri dai file di output ed eliminare le righe duplicate.
Suddividi i tuoi file CSV in blocchi facilmente gestibili
Ora hai cinque soluzioni per suddividere i tuoi file CSV in piccoli bit, rendendoli facili da gestire. Le soluzioni variano in velocità e dimensioni dei file CSV che possono gestire, quindi potrebbe essere necessario sperimentare per trovare la soluzione che funziona meglio per te. E la parte migliore di tutte? Queste tecniche di suddivisione CSV funzionano su Windows 10 e Windows 11. Puoi persino utilizzare lo strumento di divisione CSV online su macOS e Linux!