My Blog
Excel σε csv ως utf8 αποθήκευση απευθείας από τον Nicolas
- 16 Σεπτεμβρίου, 2017
- -
- Γενικά Προγραμματισμός
- -
- nicolas
Πολλά κομμάτια της εργασίας μου στην εταιρεία στην οποία εργάζομαι είναι αυτοματοποιημένα σε ιστότοπους.
Έτσι θέλοντας και όχι, ανακαλύπτω νέα πράγματα όπου αποφάσισα από εδώ και πέρα να τα μοιραστώ με τον κόσμο.
Επειδή θα χρειαστώ πολύ χρόνο για να ανεβάσω όλα τα άρθρα, θα ξεκινήσω με το τελευταίο πρόβλημα που αντιμετώπισα.
Πριν από λίγες μέρες αντιμετώπισα ένα πρόβλημα.
Έβαλα ένα αρχείο csv στο ηλεκτρονικό κατάστημα bagdome.gr.
Χρησιμοποιώ το αρχείο με την εφαρμογή "wp all import" στο wordpress για να εισάγω προϊόντα.
Το αρχείο περιέχει ελληνικούς χαρακτήρες και έπρεπε να το ανοίγω με το σημειωματάριο κάθε φορά και να το αποθηκεύω ως utf8 encode.
Τις τελευταίες μέρες άρχισα να προσθέτω τη βουλγαρική γλώσσα σε ένα νέο ηλεκτρονικό κατάστημα, το οποίο έπρεπε να τραβήξει τα δεδομένα του μέσω bagdome.gr με xml.
Ανακάλυψα ότι κάνοντας την εξαγωγή από το excel σε csv αρχείο, οι Βουλγαρικοί χαρακτήρες ήταν έτσι: ????????????
Έτσι, έπρεπε να βρω έναν τρόπο το ίδιο το excel να το εξάγει σαν csv σε utf8.
Όπως λένε οι παλιοί, ρωτώντας πας στην πόλη, έψαξα στο google και δεν βρήκα τίποτα εκτός από μερικές πληροφορίες από μια πηγή που με οδήγησε στο να λύσω το πρόβλημα χρησιμοποιώντας ένα αρχείο .exe, έναν κώδικα vba και ένα αρχείο .bat.
Δείτε την λύση από κάτω:
- Δημιουργήστε ένα φάκελο στη μονάδα δίσκου C: και ονομάστε τον CSV
- Ανοίξτε αυτόν το φάκελο και δημιουργήστε ένα νέο αρχείο με δεξί κλικ και επιλέξτε "νέο αρχείο κειμένου" και ονομάστε το ως "convert.bat" να είστε προσεκτικοί, η επέκταση του αρχείου πρέπει να είναι .bat, όχι .txt
- Κάντε δεξί κλικ στο νέο αρχείο που μόλις δημιουργήσατε και επιλέξτε επεξεργασία και προσθέστε τον παρακάτω κωδικό και αποθηκεύστε τον: "%~dp0xls2csv.exe" "%~dp0temp.xls"
- Ok τώρα κατεβάστε το ακόλουθο εργαλείο και εξαγάγετε το μέσα στο φάκελο: https://drive.google.com/open?id=0B0-xSvKcaUZhOHhldWdHd0F2Mkk
- Εντάξει τώρα είναι ώρα να μετακινήσετε το αρχείο excel στο οποίο εργάζεστε στον φάκελο C:CSV
- Ανοίξτε το αρχείο Excel και αναζητήστε την καρτέλα Developer, αν δεν μπορείτε να το δείτε εκεί, πηγαίνετε στο File> Options> Customize Ribbon και ελέγξτε την καρτέλα Developer και κάντε κλικ στο OK.
- Μόλις βρίσκεστε στην καρτέλα προγραμματιστή, κάντε κλικ στο κουμπί Visual Basic.
- Μόλις ανοίξει το βασικό παράθυρο οπτικής απεικόνισης, κάντε δεξί κλικ στην αριστερή πλαϊνή σας μπάρα και επιλέξτε Insert>Module
- Όπως μπορείτε να δείτε το παράθυρο του νέου module ανοίγει ώστε να μπορείτε να γράψετε τον κώδικα VBA σας μέσα
- Αντιγράψτε και επικολλήστε τον ακόλουθο κώδικα: https://pastebin.com/v6sQudTC
- Διαβάστε τα σχόλια με το πράσινο χρώμα και επεξεργαστείτε τον κώδικα ανάλογα με τις ανάγκες σας.
- Μόλις ολοκληρώσετε τον κώδικα, κλείστε το οπτικό βασικό παράθυρο και αποθηκεύστε το αρχείο excel.
- Τελικά πηγαίνετε στην καρτέλα Προγραμματιστής, κάντε κλικ στο κουμπί Macro, επιλέξτε τη μακροεντολή σας και κάντε κλικ στην επιλογή Εκτέλεση
Αν όλα είναι εντάξει ένα παράθυρο του windows explorer θα ανοίξει με το νεο δημιουργημένο αρχείο csv μέσα encoded ως utf8.
Αυτό το άρθρο δεν έχει ολοκληρωθεί 100%, θα γράψω ένα βίντεο γι 'αυτό και επίσης θα δημιουργήσω μια εφαρμογή εγκατάστασης με ένα demo excel στο εσωτερικό έτσι μπορείτε να το χρησιμοποιήσετε χωρίς την ανάγκη να κάνετε όλα αυτά τα βήματα.
Με εκτίμηση, Νικόλας Λάγιος
This post is also available in: English