Μορφή VBA | Πώς να χρησιμοποιήσετε τη λειτουργία VBA Format; (Παραδείγματα)

Λειτουργία μορφής Excel VBA

Η συνάρτηση μορφής στο VBA χρησιμοποιείται για τη μορφοποίηση των δεδομένων τιμών στην επιθυμητή μορφή, αυτή η συνάρτηση μπορεί να χρησιμοποιηθεί για τη μορφοποίηση ημερομηνιών ή αριθμών ή οποιωνδήποτε τριγωνομετρικών τιμών, αυτή η συνάρτηση έχει βασικά δύο υποχρεωτικά ορίσματα, το ένα είναι η είσοδος που λαμβάνεται με τη μορφή μια συμβολοσειρά και το δεύτερο όρισμα είναι ο τύπος της μορφής που θέλουμε να χρησιμοποιήσουμε για παράδειγμα εάν χρησιμοποιούμε τη Μορφή (.99, "Ποσοστό") αυτό θα μας δώσει το αποτέλεσμα ως 99%.

Στο VBA πρέπει να χρησιμοποιήσουμε τη συνάρτηση που ονομάζεται "FORMAT" για να εφαρμόσουμε τη μορφή σε κελιά. Η μορφοποίηση του Excel είναι μια από τις σημαντικές έννοιες που πρέπει να διαχειριστείτε. Οι κοινές τεχνικές μορφοποίησης που χρησιμοποιούμε όλοι στην καθημερινή μας εργασία είναι «μορφή ημερομηνίας, μορφή ώρας, μορφοποίηση αριθμών και άλλοι σημαντικοί κωδικοί μορφοποίησης». Στο κανονικό φύλλο εργασίας excel απλώς πατάμε την επιλογή format excel cell και εκτελούμε το καθήκον μορφοποίησης εφαρμόζοντας τον κατάλληλο κώδικα μορφοποίησης. Ωστόσο, στο VBA αυτό δεν είναι τόσο απλό όπως η τεχνική του φύλλου εργασίας μας.

Σύνταξη

  • Έκφραση: Αυτή δεν είναι παρά την τιμή που θέλουμε να μορφοποιήσουμε. Στην τεχνική VAB ονομάζεται έκφραση.
  • [Μορφή]: Ποια είναι η μορφή που θέλετε να εφαρμόσετε στην έκφραση που έχετε επιλέξει; Έχουμε δύο είδη μορφοποίησης εδώ, το ένα είναι η μορφή που καθορίζεται από το χρήστη και η δεύτερη είναι η ενσωματωμένη μορφή.

    Εδώ έχουμε μορφές ημερομηνίας VBA, μορφές αριθμών και μορφές κειμένου.

    Οι μορφές ημερομηνίας VBA έχουν σύντομη ημερομηνία, μεγάλη ημερομηνία, μεσαία ημερομηνία και γενική ημερομηνία.

    Οι μορφές αριθμών έχουν νόμισμα, τυπικό, ποσοστό, επιστημονικό, ναι ή όχι, αληθές ή λάθος και ενεργοποιημένο ή απενεργοποιημένο

  • [Πρώτη ημέρα της εβδομάδας]: Ποια είναι η πρώτη ημέρα της εβδομάδας σας; Μπορούμε να επιλέξουμε οποιαδήποτε μέρα από τη λίστα. Παρακάτω είναι η λίστα με τις ημέρες και τους κατάλληλους κωδικούς.

  • [Πρώτη εβδομάδα του έτους]: Ποια είναι η πρώτη εβδομάδα του έτους; Αυτό καθορίζει την εβδομάδα που πρέπει να χρησιμοποιείται ως την πρώτη εβδομάδα του έτους.

Πώς να χρησιμοποιήσετε;

Μπορείτε να κατεβάσετε αυτό το Πρότυπο μορφής VBA εδώ - Πρότυπο μορφής VBA

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

Βήμα 1: Ξεκινήστε μια μακροεντολή excel και ορίστε τη μεταβλητή ως τύπο δεδομένων " string ".

Κώδικας:

 Υπο φύλλο εργασίας_Fungsi_Παράδειγμα1 () Dim K As String End Sub 

Βήμα 2: Αντιστοιχίστε μια τιμή στο k ως τον αριθμό μας, δηλαδή 8072.56489

Κώδικας:

 Υπο φύλλο Φύλλο_ Λειτουργία_ Παράδειγμα1 () Dim K As String K = 8072.56489 End Sub 

Βήμα 3: Εμφάνιση τιμής " k " στο πλαίσιο μηνυμάτων VBA.

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example1 () Dim K As String K = 8072.56489 MsgBox K End Sub 

Βήμα 4: Εάν εκτελέσετε αυτήν τη μακροεντολή, θα έχουμε το παρακάτω αποτέλεσμα.

Το αποτέλεσμα είναι όπως έχει εκχωρηθεί η τιμή στη μεταβλητή "k". Αλλά πρέπει να εφαρμόσουμε κάποια μορφοποίηση σε αυτόν τον αριθμό για να τον κάνουμε όμορφο.

Βήμα 5: Αντί να αντιστοιχίσουμε απευθείας μια τιμή στο " k " ας χρησιμοποιήσουμε τη συνάρτηση FORMAT.

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example1 () Dim K As String K = Format (MsgBox K End Sub 

Βήμα 6: Τώρα για Έκφραση εκχωρήστε τον αριθμό 8072.56489 .

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example1 () Dim K As String K = Format (8072.56489, MsgBox K End Sub 

Βήμα 7: Στην επιλογή μορφοποίησης μπορούμε είτε να χρησιμοποιήσουμε την ενσωματωμένη μορφή είτε να χρησιμοποιήσουμε τον δικό μας κώδικα μορφοποίησης. Τώρα θα χρησιμοποιήσω ένα ενσωματωμένο στυλ μορφοποίησης ως " Τυπικό ".

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example1 () Dim K As String K = Format (8072.56489, "Standard") MsgBox K End Sub 

Βήμα 8: Τώρα εκτελέστε αυτόν τον κωδικό και δείτε το αποτέλεσμα του πλαισίου μηνυμάτων.

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

Έτσι, μπορούμε να χρησιμοποιήσουμε πολλά άλλα ενσωματωμένα στυλ μορφοποίησης για να εφαρμόσουμε τη μορφοποίηση. Ακολουθούν ορισμένοι από τους κωδικούς που έχω εφαρμόσει.

# 1 - Μορφή νομίσματος

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example2 () Dim K As String K = Μορφή (8072.56489, "Currency") MsgBox K End Sub 

Αποτέλεσμα:

# 2 - Σταθερή μορφή

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example3 () Dim K As String K = Format (8072.56489, "Fixed") MsgBox K End Sub 

Αποτέλεσμα:

# 3 - Ποσοστό μορφής

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example4 () Dim K As String K = Format (8072.56489, "Percent") MsgBox K End Sub 

Αποτέλεσμα:

# 4 - Μορφές καθορισμένες από το χρήστη

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

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example5 () Dim K As String K = Format (8072.56489, "#. ##") MsgBox K End Sub 

Αποτέλεσμα:

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example5 () Dim K As String K = Format (8072.56489, "#, ##. ##") MsgBox K End Sub 

Αποτέλεσμα:

# 5 - ΗΜΕΡΟΜΗΝΙΑ FORMAT

Έχουμε δει μερικούς από τους σημαντικούς αριθμούς τεχνικών μορφοποίησης. Τώρα θα πρέπει να χρησιμοποιήσουμε τη συνάρτηση FORMAT για να μορφοποιήσουμε την ημερομηνία στο VBA.

Έχω γράψει κώδικα για να δείξω το αποτέλεσμα της ημερομηνίας μέσω της μεταβλητής.

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example6 () Dim K As String K = 13 - 3 - 2019 MsgBox K End Sub 

Όταν τρέχω αυτόν τον κωδικό, δεν θα έχω ακριβή ημερομηνία, αλλά το αποτέλεσμα είναι αξιολύπητο.

Για να λάβουμε τις ακριβείς ημερομηνίες, πρέπει να αντιστοιχίσουμε τη μορφή ημερομηνίας σε αυτήν. Το πρώτο πράγμα που πρέπει να κάνουμε είναι να δώσουμε την ημερομηνία σε δύο εισαγωγικά και να εφαρμόσουμε τη μορφή ημερομηνίας.

Κώδικας:

 Υπο φύλλο εργασίας_Function_Example6 () Dim K As String K = Format ("10 - 3 - 2019", "Long Date") MsgBox K End Sub 

Εάν εκτελέσω αυτόν τον κωδικό τώρα, θα λάβω μια σωστή χρονολόγηση.

Το "Long Date" είναι μια ενσωματωμένη μορφή, ομοίως μπορείτε να χρησιμοποιήσετε τις επιλογές "σύντομη ημερομηνία" και "μέση ημερομηνία".

Πράγματα που πρέπει να θυμάστε

  • Η τιμή που επιστρέφεται από τη συνάρτηση FORMAT είναι η συμβολοσειρά.
  • Μπορούμε επίσης να χρησιμοποιήσουμε τους δικούς μας κωδικούς μορφοποίησης ημερομηνίας, ώρας και αριθμών, όπως τον τρόπο που χρησιμοποιούμε στη μορφοποίηση φύλλων εργασίας.
  • Το FORMAT είναι μια συνάρτηση VBA και διατίθεται μόνο σε VBA και όχι στο φύλλο εργασίας.