ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [VBA] Ελληνικά σε Λατινικά (μετατροπή)

Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 04-10-17, 19:31
Όνομα: Δημήτρης
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 24-03-2012
Περιοχή: Θεσσαλονίκη
Μηνύματα: 70
Προεπιλογή Ελληνικά σε Λατινικά (μετατροπή)

Καλησπέρα στους φίλους του forum.

Θέλω να ρωτήσω εάν υπάρχει τίποτα έτοιμο για μετατροπή ελληνικών χαρακτήρων σε λατινικούς με βάση το ISO ΕΛΟΤ 743 το οποίο είναι ταυτόσημο με το Διεθνές πρότυπο ISO 843 όπως γίνεται στη σελίδα της διεύθυνσης διαβατηρίων (ELOT 743).

Ευχαριστώ εκ των προτέρων για οποιαδήποτε πληροφορία.

Φιλικά

Δημήτρης
Απάντηση με παράθεση
  #2  
Παλιά 06-10-17, 12:40
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.402
Προεπιλογή

Καλημέρα

Η συνάρτηση, μετατρέπει:
Ελληνικούς χαρακτήρες σε Λατινικούς (Όχι greeklish).

Η μετατροπή, γίνεται με βάση τα 2 array της συνάρτησης και περιλαμβάνει:
1. απλούς χαρακτήρες,
2. χαρακτήρες με τονισμό,
3. χαρακτήρες με διαλυτικά,
4. χαρακτήρες με διαλυτικά & τονισμό.

Στο τέλος, αντικαθιστά φθόγγους, με βάση το ISO ΕΛΟΤ 743.

Επειδή δεν έχω ελέγξει επισταμένα όλους τους φθόγγους,
μπορείτε να συμπληρώσετε στο τέλος του κώδικα και ο,τι άλλο θέλετε,
με την μορφή του Replace, αντικαθιστώντας τα XXX, με όποιο φθόγγο θέλετε.

Greek_ISO_ELOT_743 = Replace(Greek_ISO_ELOT_743, "XXX", "XXX")

Η αντικατάσταση, θα γίνει στο τελικό αποτέλεσμα, δηλαδή στην λατινική λέξη
ΠΧ
Aggelou >>> Angelou
Η συνάρτηση, αποδίδει την μετατροπή σε Proper.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ISO ΕΛΟΤ 743.xlsm (30,0 KB, 113 εμφανίσεις)
Απάντηση με παράθεση
  #3  
Παλιά 06-10-17, 21:26
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Καλησπέρα

Σπύρο παρατήρησα ότι στη συνάρτηση που πρότεινες, δεν αντιμετωπίζεται η ακόλουθη περίπτωση.

Σύμφωνα με την ιστοσελίδα της Διεύθυνσης Διαβατηρίων τα ονόματα:

Ευαγγέλου, Ευανθία, Ελευθερία, μετατρέπονται στα:

Evangelou, Evanthia, Eleftheria.

Βλέπουμε δηλαδή ότι το σύμπλεγμα «ev» σε κάποιες περιπτώσεις γίνεται «f».

Η περίπτωση αυτή είναι πιο σύνθετη και δεν αντιμετωπίζεται με μια απλή συνάρτηση Replace().

Απαιτεί περισσότερο κώδικα.
Απάντηση με παράθεση
  #4  
Παλιά 06-10-17, 21:50
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.402
Προεπιλογή

Τα παραδείγματα που μου γράφεις Γιώργο, αντιμετωπίζονται, αν προσθέσουμε και τα
Greek_ISO_ELOT_743 = Replace(Greek_ISO_ELOT_743, "Ey", "Ev")
Greek_ISO_ELOT_743 = Replace(Greek_ISO_ELOT_743, "ey", "ef")

Είπα ότι δεν έχω ελέγξει επισταμένα όλους τους φθόγγους
γιατί τα Ελληνικά έχουν πολλές διαφορετικές περιπτώσεις.

Εδώ είναι και η «δυσκολία» αυτού του προβλήματος.
Να υπάρχει χρόνος, να εξετάσει κανείς όλα όσα πρέπει,
όπως για παράδειγμα την ηχητική απόδοση του ΕΥ σε ΕΒ ή ΕΦ κλπ

Ο κώδικας είναι μπούσουλας αλλά και πολύ κοντά στην πραγματικότητα.
Άλλωστε ο Δημήτρης γνωρίζει από κώδικα και μπορεί να «παίξει» επάνω σε αυτό...

Τελευταία επεξεργασία από το χρήστη Spirosgr : 17-09-18 στις 18:59. Αιτία: Ορθογραφία
Απάντηση με παράθεση
  #5  
Παλιά 06-10-17, 22:12
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.402
Προεπιλογή

Για κάποιες ακόμα «δύσκολες» περιπτώσεις, όπως

Ευθαλία = Efthalia
Ευτυχία = Eftyxia

να προσθέσουμε

Greek_ISO_ELOT_743 = Replace(Greek_ISO_ELOT_743, "Evt", "Eft")

και
Ευστράτιος = Efstratios

Greek_ISO_ELOT_743 = Replace(Greek_ISO_ELOT_743, "Evs", "Efs")

Γενικά νομίζω χρόνο θέλει και υπομονή και μάλλον μπορεί να τα αντιμετωπίσει όλα...
Απάντηση με παράθεση
  #6  
Παλιά 06-10-17, 22:20
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Σπύρο το πρόβλημα είναι πιο σύνθετο.

Για την «Ευτέρπη» η σωστή μετατροπή είναι «Efterpi».

Σύμφωνα με την πρότασή σου θα έχουμε:

Ευτέρπη > Eyterpi > Evterpi.

Για τις δυσκολίες της προσπάθειας, συμφωνώ.
Απάντηση με παράθεση
  #7  
Παλιά 06-10-17, 22:24
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.402
Προεπιλογή

Γιώργο μου, δεν με παρακολουθείς...
Βάλε κι αυτά που έχω στο #5 post, και θα δεις...

Δεν είναι δύσκολο αλλά θέλει υπομονή και μέθοδο...
τις οποίες δεν έχω αυτήν την στιγμή για να ολοκληρώσω όλες τις περιπτώσεις...
Απάντηση με παράθεση
  #8  
Παλιά 06-10-17, 22:49
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Σπύρο αυτά που γράφω αναφέρονται στο post #4.

Είναι φανερό ότι γράφαμε ταυτόχρονα.
Απάντηση με παράθεση
  #9  
Παλιά 06-10-17, 22:50
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.402
Προεπιλογή

Ok, όλα καλά...
Απάντηση με παράθεση
  #10  
Παλιά 07-10-17, 13:00
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Καλησπέρα

Και μια άλλη πρόταση στο συνημμένο:

1) Η μετατροπή από ελληνικά σε λατινικά γίνεται με τη συνάρτηση χρήστη : GreekToLatin(txt).

2) Πριν από την κατάρτιση της συνάρτησης μελετήθηκαν, για διάφορες περιπτώσεις, οι μετατροπές σύμφωνα με την επίσημη ιστοσελίδα της Διεύθυνσης Διαβατηρίων.

3) Η συνάρτηση διαμορφώθηκε με στόχο να δίνει τα ίδια αποτελέσματα.

Μολονότι έκανα αρκετές δοκιμές, δεν αποκλείεται κάτι να μου διέφυγε.

Θα χαρώ να επισημανθούν περιπτώσεις, που δεν μετατρέπονται σωστά, ώστε να ληφθούν υπόψη σε κάποια μελλοντική αναβάθμιση.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm FromGreeKToLatin2.xlsm (27,9 KB, 139 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 07-10-17 στις 16:39. Αιτία: Βελτίωση στη μετατροπή του "μπ"
Απάντηση με παράθεση
Απάντηση στο θέμα

Εργαλεία Θεμάτων
Τρόποι εμφάνισης

Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
Word 2007 ελληνικά --> τόνους; gfevran Word - Ερωτήσεις / Απαντήσεις 1 23-05-13 13:07
ECDL - OFFICE 2007 ΕΛΛΗΝΙΚΑ E-BOOKS skoutsouris Off topic - Εκτός θέματος 1 23-02-12 08:30
[ Εκθέσεις ] BARCODES Ελληνικά gnikol Access - Ερωτήσεις / Απαντήσεις 4 19-05-11 20:24
[ Ερωτήματα ] Access και Ελληνικά Πρόβλημα soessartite Access - Ερωτήσεις / Απαντήσεις 2 23-03-11 14:29
Αρχεία βοήθειας Ελληνικά για Access 2003 kwstarikanos Access - Ερωτήσεις / Απαντήσεις 1 24-09-10 21:28


Η ώρα είναι 03:40.