Πίνακας περιεχομένων
Το CSV δεν ανοίγει σωστά στο Excel; Το σεμινάριο διερευνά τυπικά προβλήματα και παρέχει τις πιο αποτελεσματικές λύσεις.
Η μορφή CSV χρησιμοποιείται συνήθως για την εισαγωγή/εξαγωγή δεδομένων μεταξύ διαφόρων προγραμμάτων υπολογιστικών φύλλων. Η ονομασία CSV (comma separated values) υποδηλώνει τη χρήση κόμματος για το διαχωρισμό των πεδίων δεδομένων. Αυτό όμως είναι στη θεωρία. Στην πράξη, πολλά λεγόμενα αρχεία CSV διαχωρίζουν τα δεδομένα χρησιμοποιώντας άλλους χαρακτήρες, όπως άνω και κάτω τελεία ή tabs. Ορισμένες υλοποιήσεις περικλείουν τα πεδία δεδομένων σε μονά ή διπλά εισαγωγικά, ενώάλλα απαιτούν ένα σήμα τάξης byte Unicode (BOM), για παράδειγμα UTF-8, για τη σωστή ερμηνεία του Unicode. Η έλλειψη προτύπου δημιουργεί διάφορα προβλήματα με τις μετατροπές CSV σε Excel.
Το αρχείο CSV ανοίγει σε μία στήλη στο Excel
Συμπτώματα Όταν ανοίγετε ένα αρχείο csv στο Excel, όλα τα δεδομένα εμφανίζονται σε μία μόνο στήλη.
Αιτία Για να χωρίσει τα δεδομένα σε στήλες, το Excel χρησιμοποιεί το διαχωριστικό λίστας που έχει οριστεί στις περιφερειακές ρυθμίσεις των Windows. Αυτό μπορεί να είναι είτε κόμμα (στη Βόρεια Αμερική και σε ορισμένες άλλες χώρες) είτε άνω τελεία (στις ευρωπαϊκές χώρες). Όταν το διαχωριστικό που χρησιμοποιείται σε ένα συγκεκριμένο αρχείο .csv διαφέρει από το προεπιλεγμένο διαχωριστικό, το αρχείο αυτό ανοίγει σε μία στήλη.
Λύσεις . Υπάρχουν διάφορες πιθανές λύσεις για αυτή την περίπτωση, συμπεριλαμβανομένων των μακροεντολών VBA ή μιας σφαιρικής αλλαγής στις ρυθμίσεις των Windows. Θα σας δείξουμε πώς να διορθώσετε γρήγορα το πρόβλημα χωρίς να αλλάξετε τον προεπιλεγμένο διαχωριστή λίστας στον υπολογιστή σας, ώστε να μην επηρεαστεί καμία από τις εφαρμογές σας.
Αλλαγή διαχωριστικού στο αρχείο CSV
Για να είναι σε θέση το Excel να διαβάζει CSV με διαφορετικό διαχωριστικό, μπορείτε να ορίσετε το διαχωριστικό απευθείας στο αρχείο αυτό. Για να το κάνετε, ανοίξτε το αρχείο με οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου (το Notepad κάνει μια χαρά) και προσθέστε το παρακάτω κείμενο στην πρώτη γραμμή. Σημειώστε, θα πρέπει να είναι μια ξεχωριστή γραμμή πριν από οποιαδήποτε άλλα δεδομένα:
- Για διαχωρισμό με κόμμα: sep=,
- Για διαχωρισμό με άνω τελεία: sep=,
Με τον ίδιο τρόπο, μπορείτε να ορίσετε οποιοδήποτε άλλο προσαρμοσμένο διαχωριστικό - απλώς πληκτρολογήστε το μετά το σύμβολο ισότητας.
Με τον κατάλληλο διαχωριστή, μπορείτε τώρα να ανοίξετε το αρχείο με τον συνηθισμένο τρόπο, από το ίδιο το Excel ή από την Εξερεύνηση των Windows.
Καθορισμός διαχωριστικού κατά την εισαγωγή αρχείου CSV στο Excel
Αντί να ανοίξετε ένα αρχείο csv στο Excel, εισαγάγετε το αρχείο χρησιμοποιώντας είτε τον Οδηγό εισαγωγής κειμένου (σε όλες τις εκδόσεις) είτε το Power Query (στο Excel 365 - 2016).
Ο Οδηγός εισαγωγής κειμένου ( Δεδομένα tab>, Από το κείμενο ) παρέχει μερικές επιλογές για τους διαχωριστές στο βήμα 2. Γενικά, θα επιλέγατε:
- Κόμμα για αρχεία με διαχωρισμένες τιμές με κόμμα
- Καρτέλα για αρχεία κειμένου
- Τελεία και παύλα για αρχεία τιμών που διαχωρίζονται με τελεία και παύλα
Αν δεν είστε σίγουροι για το διαχωριστικό που περιέχουν τα δεδομένα σας, δοκιμάστε διαφορετικά διαχωριστικά και δείτε ποιο λειτουργεί σωστά στην προεπισκόπηση δεδομένων.
Κατά τη δημιουργία μιας σύνδεσης Power Query, μπορείτε να επιλέξετε το διαχωριστικό στο παράθυρο διαλόγου Προεπισκόπηση:
Για λεπτομερείς οδηγίες βήμα προς βήμα, ανατρέξτε στα παραδείγματα που παρατίθενται παραπάνω.
Διαχωρισμός κελιών χρησιμοποιώντας τη λειτουργία Κείμενο σε στήλες
Σε περίπτωση που τα δεδομένα σας έχουν ήδη μεταφερθεί στο Excel, μπορείτε να τα διαχωρίσετε σε διαφορετικές στήλες χρησιμοποιώντας την εντολή Κείμενο σε στήλες Ουσιαστικά, λειτουργεί όπως ο Οδηγός εισαγωγής κειμένου: επιλέγετε ένα διαχωριστικό και Προεπισκόπηση δεδομένων αντικατοπτρίζει τις αλλαγές εν κινήσει:
Για πλήρεις λεπτομέρειες, ανατρέξτε στην ενότητα Πώς να χωρίζετε κελιά στο Excel.
Πώς να διατηρήσετε κορυφαία μηδενικά στο Excel CSV
Συμπτώματα. Ορισμένες τιμές στο αρχείο csv σας περιέχουν μηδενικά μπροστά. Όταν το αρχείο ανοίγει στο Excel, τα προηγούμενα μηδενικά χάνονται.
Αιτία Από προεπιλογή, το Microsoft Excel μετατρέπει τα αρχεία csv στο πρότυπο Γενικά μορφή που αφαιρεί τα κορυφαία μηδενικά.
Λύση . Αντί να ανοίξετε, εισάγετε το CSV σας στο Excel και επιλέξτε το Κείμενο μορφή για προβληματικές στήλες.
Χρήση του Οδηγού εισαγωγής κειμένου
Για να ξεκινήσετε Οδηγός εισαγωγής κειμένου αυτόματα, αλλάξτε την επέκταση αρχείου από .csv σε .txt και, στη συνέχεια, ανοίξτε το αρχείο κειμένου από το Excel. Ή ενεργοποιήστε τη λειτουργία Από κείμενο (Legacy) και ξεκινήστε την εισαγωγή CSV στο Excel.
Στο βήμα 3 του οδηγού, επιλέξτε τη στήλη που περιέχει τιμές με μηδενικά στην αρχή και αλλάξτε τη μορφή της σε Κείμενο Αυτό θα εισαγάγει τις τιμές ως συμβολοσειρές κειμένου διατηρώντας όλα τα μηδενικά στη θέση τους.
Χρήση του Power Query
Αν προτιμάτε να εισάγετε ένα αρχείο csv στο Excel με σύνδεση σε αυτό, υπάρχουν δύο τρόποι για να διατηρήσετε τα κορυφαία μηδενικά.
Μέθοδος 1: Εισαγωγή όλων των δεδομένων σε μορφή κειμένου
Στο παράθυρο διαλόγου προεπισκόπησης, στην περιοχή Ανίχνευση τύπου δεδομένων , επιλέξτε Μην ανιχνεύετε τύπους δεδομένων Τα περιεχόμενα του αρχείου csv θα φορτωθούν στο Excel ως κείμενο και όλα τα αρχικά μηδενικά θα διατηρηθούν.
Σημείωση. Αυτή η μέθοδος λειτουργεί καλά αν το αρχείο σας περιέχει μόνο κείμενο δεδομένα. Εάν υπάρχουν διαφορετικά είδη τιμών, τότε χρησιμοποιήστε τη μέθοδο 2 για να ορίσετε την κατάλληλη μορφή για κάθε στήλη ξεχωριστά.
Μέθοδος 2: Ορισμός μορφής για κάθε στήλη
Σε περίπτωση που το αρχείο csv περιέχει διάφορους τύπους δεδομένων, όπως κείμενο, αριθμούς, νομίσματα, ημερομηνίες και χρόνους, μπορείτε να υποδείξετε ρητά ποια μορφή θα πρέπει να χρησιμοποιηθεί για κάθε συγκεκριμένη στήλη.
- Κάτω από την προεπισκόπηση δεδομένων, κάντε κλικ στο Μετασχηματισμός δεδομένων .
- Στο Power Query Editor, επιλέξτε τη στήλη στην οποία θέλετε να διατηρήσετε τα προηγούμενα μηδενικά και κάντε κλικ στο κουμπί Τύπος δεδομένων >, Κείμενο .
- Κλείσιμο & Φόρτωση - αυτό θα φορτώσει τα αποτελέσματα σε ένα νέο φύλλο στο τρέχον βιβλίο εργασίας.
- Κλείσιμο & Φόρτωση To... - αυτό θα σας επιτρέψει να αποφασίσετε πού θα φορτώσετε τα αποτελέσματα.
Συμβουλή. Αυτές οι μέθοδοι μπορούν επίσης να αποτρέψουν άλλους χειρισμούς με τα δεδομένα σας που το Excel προσπαθεί να εκτελέσει αυτόματα. Για παράδειγμα, εάν τα εισαγόμενα δεδομένα αρχίζουν με "=", το Excel θα προσπαθήσει να τα υπολογίσει. Με την εφαρμογή της μεθόδου Κείμενο format, δηλώνετε ότι οι τιμές είναι συμβολοσειρές και όχι τύποι.
Πώς να διορθώσετε προβλήματα μορφής ημερομηνίας CSV στο Excel
Συμπτώματα. Μετά τη μετατροπή του CSV σε Excel, οι ημερομηνίες μορφοποιούνται εσφαλμένα, οι ημέρες και οι μήνες ανταλλάσσονται, ορισμένες ημερομηνίες μετατρέπονται σε κείμενο και ορισμένες τιμές κειμένου μορφοποιούνται αυτόματα ως ημερομηνίες.
Αιτία Στο αρχείο csv σας, οι ημερομηνίες γράφονται σε μορφή διαφορετική από την προεπιλεγμένη μορφή ημερομηνίας που έχει οριστεί στο λειτουργικό σας σύστημα, εξαιτίας της οποίας το Excel δεν μπορεί να ερμηνεύσει σωστά τις ημερομηνίες.
Λύση Ανάλογα με το πρόβλημα που αντιμετωπίζετε, δοκιμάστε μία από τις παρακάτω λύσεις.
Οι ημέρες και οι μήνες είναι μπερδεμένοι
Όταν οι μορφές ημερομηνίας στις περιφερειακές ρυθμίσεις των Windows και στο αρχείο csv είναι διαφορετικές, δεν υπάρχει τρόπος να προσδιορίσει το Excel ότι mm/dd/yy Οι ημερομηνίες που αναζητά αποθηκεύονται στο ηη/μμ/εε Ως αποτέλεσμα, οι μονάδες ημέρας και μήνα αντιστρέφονται: Ιαν-3 γίνεται Μαρ-1 , Ιαν-10 γίνεται Οκτ-1 κ.ο.κ. Επιπλέον, οι ημερομηνίες μετά την Ιαν-12 μετατρέπονται σε συμβολοσειρές κειμένου επειδή δεν υπάρχουν 13ος, 14ος κ.λπ. μήνες.
Για να εισαχθούν σωστά οι ημερομηνίες, εκτελέστε τον Οδηγό εισαγωγής κειμένου και επιλέξτε το κατάλληλο Ημερομηνία μορφή στο βήμα 3:
Ορισμένες τιμές μετατρέπονται σε ημερομηνίες
Το Microsoft Excel έχει σχεδιαστεί για να διευκολύνει την εισαγωγή διαφόρων ειδών τιμών. Επομένως, εάν το Excel πιστεύει ότι μια δεδομένη τιμή αντιπροσωπεύει ημερομηνία, μορφοποιείται αυτόματα ως ημερομηνία. Για παράδειγμα, η συμβολοσειρά κειμένου Απρ23 μοιάζει πολύ με 23 Απριλίου , και 11/3 μοιάζει με το 3 Νοεμβρίου , οπότε και οι δύο τιμές μετατρέπονται σε ημερομηνίες.
Για να σταματήσετε το Excel από το να αλλάζει τις τιμές κειμένου σε ημερομηνίες, χρησιμοποιήστε την ήδη γνωστή προσέγγιση: μετατρέψτε το CSV σε Excel εισάγοντας το. Στο βήμα 3 του Οδηγός εισαγωγής κειμένου , επιλέξτε την προβληματική στήλη και αλλάξτε τη μορφή της σε Κείμενο .
Οι ημερομηνίες μορφοποιούνται εσφαλμένα
Όταν ένα αρχείο csv ανοίγει στο Excel, οι ημερομηνίες εμφανίζονται συνήθως στην προεπιλεγμένη μορφή. Για παράδειγμα, στο αρχικό σας αρχείο μπορεί να έχετε 7-May-21 ή 05/07/21 , ενώ στο Excel εμφανίζεται ως 5/7/2021 .
Για να εμφανίσετε τις ημερομηνίες στην επιθυμητή μορφή, χρησιμοποιήστε την επιλογή Κελιά μορφοποίησης χαρακτηριστικό:
- Επιλέξτε τη στήλη των ημερομηνιών.
- Πατήστε Ctrl + 1 για να ανοίξετε το Κελιά μορφοποίησης παράθυρο διαλόγου.
- Στο Αριθμός καρτέλα, επιλέξτε Ημερομηνία στο Κατηγορία .
- Κάτω από το Τύπος , επιλέξτε την επιθυμητή μορφοποίηση.
- Κάντε κλικ στο OK.
Εάν καμία από τις προκαθορισμένες μορφές δεν είναι κατάλληλη για εσάς, τότε μπορείτε να δημιουργήσετε τη δική σας, όπως εξηγείται στην ενότητα Πώς να δημιουργήσετε προσαρμοσμένη μορφή ημερομηνίας στο Excel.
Αποτροπή του Excel από τη μετατροπή αριθμών σε επιστημονική σημειογραφία
Συμπτώματα. Μετά τη μετατροπή του CSV στο Excel, οι μεγάλοι αριθμοί μορφοποιούνται ως επιστημονική σημειογραφία, π.χ. το 1234578900 εμφανίζεται ως 1.23E+09.
Αιτία Στο Microsoft Excel, οι αριθμοί περιορίζονται σε 15 ψηφία ακρίβειας. Εάν οι αριθμοί στο αρχείο csv υπερβαίνουν αυτό το όριο, το Excel τους μετατρέπει αυτόματα σε επιστημονική σημειογραφία ως τρόπο συμμόρφωσης με αυτό το όριο. Εάν ένας αριθμός περιέχει περισσότερα από 15 σημαντικά ψηφία, όλα τα "επιπλέον" ψηφία στο τέλος μετατρέπονται σε μηδενικά.
Λύση . Εισαγωγή μεγάλων αριθμών ως κείμενο ή αλλαγή της μορφής αριθμού απευθείας στο Excel.
Εισαγωγή μεγάλων αριθμών ως κείμενο
Για να μεταφέρετε με ακρίβεια μεγάλους αριθμούς από το CSV στο Excel, εκτελέστε την εντολή Οδηγός εισαγωγής κειμένου και ορίστε τη μορφή της(των) στήλης(ών) στόχου σε Κείμενο .
Αυτή είναι η μόνη πραγματική λύση για την ακριβή εισαγωγή αριθμητικές συμβολοσειρές χωρίς απώλεια δεδομένων, δηλαδή χωρίς αντικατάσταση του 16ου και των επόμενων ψηφίων με 0 ή αφαίρεση των αρχικών μηδενικών. Λειτουργεί εξαιρετικά για καταχωρίσεις όπως αναγνωριστικά προϊόντων, αριθμούς λογαριασμών, γραμμωτούς κωδικούς και παρόμοια.
Ωστόσο, αν οι τιμές σας είναι αριθμοί και όχι συμβολοσειρές, δεν είναι η καλύτερη μέθοδος, καθώς δεν θα μπορείτε να κάνετε μαθηματικά στις τιμές κειμένου που προκύπτουν.
Αυτή η μέθοδος θα σας βοηθήσει επίσης να αποτρέψετε άλλες ανεπιθύμητες αυτόματες μορφοποιήσεις δεδομένων κατά τη μετατροπή ενός αρχείου CSV.
Αλλαγή μορφής αριθμού στο Excel
Εάν τα δεδομένα σας είναι ήδη στο Excel, μπορείτε να αλλάξετε τη μορφή από Γενικά είτε σε Κείμενο ή Αριθμός όπως φαίνεται παρακάτω:
Σημείωση. Αυτή η μέθοδος δεν θα επαναφέρει τα διαγραμμένα προηγούμενα μηδενικά ή τα ψηφία μετά τη 15η θέση που αντικαταστάθηκαν με μηδενικά.
Για περισσότερες πληροφορίες, ανατρέξτε στην ενότητα Πώς να μορφοποιήσετε κελιά στο Excel.
Κάντε τη στήλη πιο πλατιά
Στην απλούστερη περίπτωση, όταν ένας αριθμός περιέχει λιγότερα από 15 ψηφία, αρκεί να κάνετε μια στήλη λίγο πιο πλατιά για να εμφανίζονται οι αριθμοί κανονικά.
Για περισσότερες λεπτομέρειες, ανατρέξτε στην ενότητα Πώς να αλλάζετε το μέγεθος και την αυτόματη προσαρμογή στηλών στο Excel.
Αυτός είναι ο τρόπος με τον οποίο μπορείτε να διορθώσετε τα πιο συνηθισμένα προβλήματα που μπορεί να εμφανιστούν με μετατροπές CSV σε Excel. Σας ευχαριστούμε για την ανάγνωση και τα λέμε την επόμενη εβδομάδα!