Δημιουργήστε μακροεντολές και γράψτε κώδικα στο Excel

Ξέρετε ότι μπορείτε να χρησιμοποιήσετε VB script στο Excel. Με την ευκαιρία της 21ης Απριλίου, ως παγκόσμια ημέρα καινοτομίας και δημιουργικότητας, έχουμε να σας δείξουμε tips με το τι μπορείτε να κάνετε χρησιμοποιώντας μακροεντολές και κώδικα στο Microsoft Excel.

Μακροεντολές

Έχουμε γράψει στο παρελθόν ένα άρθρο για τις μακροεντολές. Τις χρησιμοποιούμε όταν θέλουμε να αυτοματοποιήσουμε εργασίες που επαναλαμβάνονται σε ένα ή περισσότερα φύλλα εργασίας.

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

VB script στο excel

Visual Basic Script. Μπορείτε να γράψετε κώδικα ο οποίος θα υλοποιεί κάτι που δεν είναι εύκολο να κάνετε με μία μακροεντολή ή απλά θέλετε να επεξεργαστείτε μία υπάρχουσα μακροεντολή ή απλά... δεν θέλετε να καταγράψετε μακροεντολές.

Στην ουσία όταν καταγράφουμε μακροεντολές, δημιουργείται κώδικας. Αν κάποιος είναι έμπειρος μπορεί να γράψει απευθείας κώδικα VB script στο excel και να έχει το ίδιο αποτέλεσμα με το αν κατέγραφε μία μακροεντολή.

Αντικατάσταση τύπων με τιμές

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

Στο φύλλο εργασίας που θέλετε να γίνει η αντικατάσταση πρέπει να συμπληρώσουμε τον παρακάτω κώδικα. Δείτε στο βίντεο πως χρησιμοποιείται.

Sub ConvertToValues()
  With ActiveSheet.UsedRange
    .Value = .Value
  End With
End Sub

Ταξινόμηση όλων των φύλλων εργασίας αλφαβητικά

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

Sub SortSheetsTabName()
  Application.ScreenUpdating = False
  Dim ShCount As Integer, i As Integer, j As Integer
  ShCount = Sheets.Count
  For i = 1 To ShCount - 1
    For j = i + 1 To ShCount
      If Sheets(j).Name < Sheets(i).Name Then
        Sheets(j).Move before:=Sheets(i)
      End If
    Next j
  Next i
  Application.ScreenUpdating = True
End Sub

Αποθήκευση ως pdf κάθε φύλλου εργασίας

Με τον παρακάτω κώδικα, μπορείτε να αποθηκεύσετε κάθε φύλλο εργασίας του ανοιχτού αρχείο με την μορφή .pdf

 Υπό κανονικές συνθήκες, κάτι τέτοιο είναι χρονοβόρο. Με την χρήση μακροεντολών μπορούμε να αυτοματοποιήσουμε την διαδικασία και να την ολοκληρώνουμε με το πάτημα ενός κουμπιού.

Sub SaveWorkshetAsPDF()
  Dim ws As Worksheet
  For Each ws In Worksheets
    ws.ExportAsFixedFormat xlTypePDF, ws.Name &   ".pdf"
  Next ws
End Sub

Σχετικά άρθρα

Συγκεντρωτικοί πίνακες και εισαγωγή τους στο Power query

Μορφοποίηση υπό όρους για κάθε σειρά του πίνακα

Πληροφορίες

Χατζηγεωργίου Γεώργιος

info[@]getcert.gr

6945531647