Λάβετε μια λίστα με όλα τα σχόλια σε ένα φύλλο εργασίας στο Excel

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

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

Λάβετε μια λίστα με όλα τα σχόλια σε ένα φύλλο εργασίας

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

Κάτι όπως φαίνεται παρακάτω:

Υπάρχει ένας κωδικός VBA στο backend που κάνει τα ακόλουθα πράγματα:

  • Ελέγχει αν υπάρχουν σχόλια στο ενεργό φύλλο εργασίας ή όχι. Εάν δεν υπάρχουν σχόλια, υποκύπτει ήσυχα και δεν κάνει τίποτα.
  • Εάν υπάρχουν σχόλια στο φύλλο εργασίας, δημιουργεί ένα νέο φύλλο εργασίας ("Σχόλια") και εξάγει μια λίστα με όλα τα σχόλια στην ακόλουθη δομή:
    • Η στήλη Α έχει τη διεύθυνση κελιού που περιέχει το σχόλιο.
    • Η στήλη Β έχει το όνομα του σχολιαστή. Αυτό είναι χρήσιμο εάν υπάρχουν πολλοί αναθεωρητές του ίδιου αρχείου. Θα βοηθήσει επίσης στο φιλτράρισμα/ταξινόμηση με βάση το όνομα των κριτών.
    • Η στήλη Γ έχει το σχόλιο.

Κατεβάστε το Παράδειγμα αρχείου

Ο κώδικας VBA

Εδώ είναι ο κώδικας VBA που κάνει όλη την άρση βαρών εδώ.

Sub ExtractComments () Dim ExComment As Comment Dim i As Integer Dim ws As Worksheet Dim CS As Worksheet Set CS = ActiveSheet If ActiveSheet.Comments.Count = 0 Τότε Έξοδος από Sub Για κάθε ws στα φύλλα εργασίας If ws.Name = "Comments" Τότε i = 1 Επόμενο ws Αν i = 0 Στη συνέχεια ορίστε ws = Φύλλα εργασίας.Προσθέστε (Μετά: = ActiveSheet) ws.Name = "Σχόλια" Αλλιώς: Ορίστε ws = Φύλλα εργασίας ("Σχόλια") Τέλος εάν για κάθε σχόλιο σε CS.Comments ws. Εύρος ("A1"). Value = "Comment In" ws.Range ("B1"). Value = "Comment By" ws.Range ("C1"). Value = "Comment" With ws.Range ("A1: C1 ") .Font.Bold = True .Interior.Color = RGB (189, 215, 238). Colonns.ColumnWidth = 20 Τέλος με If ws.Range (" A2 ") =" "Στη συνέχεια ws.Range (" A2 " ) .Αξία = ExComment.Parent.Address ws.Range ("B2"). Value = Left (ExComment.Text, InStr (1, ExComment.Text, ":") - 1) ws.Range ("C2") Value = Right (ExComment.Text, Len (ExComment.Text) - InStr (1, ExComment.Text, ":")) Else ws.Range ("A1"). End (xlDown). Offset (1, 0) = ExComment.Parent.Address ws.Range ("B1"). Τέλος (xlDown). Offset (1, 0) = Αριστερά (ExComment Text, InStr (1, ExComment.Text, ":") - 1) ws.Range ("C1"). End (xlDown). Offset (1, 0) = Right (ExComment.Text, Len (ExComment.Text) - InStr (1, ExComment.Text, ":")) Τερματισμός Αν Επόμενο ExComment End Sub

Πώς να χρησιμοποιήσετε αυτόν τον κώδικα

Υπάρχουν δύο τρόποι με τους οποίους μπορείτε να χρησιμοποιήσετε αυτόν τον κώδικα για να λάβετε μια λίστα σχολίων από το φύλλο εργασίας σας:

#1 Αντιγραφή Επικόλληση δεδομένων στο Παράδειγμα αρχείου

Αντιγράψτε επικολλήστε τα δεδομένα σας (ως έχουν) στην καρτέλα Δεδομένα του αρχείου λήψης και, στη συνέχεια, εκτελέστε αυτήν τη μακροεντολή.

Για να εκτελέσετε αυτό:

  • Μεταβείτε στην καρτέλα Προγραμματιστής και κάντε κλικ στις Μακροεντολές. Θα ανοίξει το πλαίσιο διαλόγου Μακροεντολή.
  • Επιλέξτε ExtractComment και κάντε κλικ στο Εκτέλεση. Βεβαιωθείτε ότι βρίσκεστε στο φύλλο που περιέχει τα σχόλια που θέλετε να εξαγάγετε.

#2 Αντιγραφή Επικολλήστε τον κώδικα στο βιβλίο εργασίας σας

Αντιγράψτε τον κώδικα και επικολλήστε τον στο βιβλίο εργασίας από το οποίο θέλετε να εξαγάγετε τα σχόλια.

Για να το κάνω αυτό:

  • Ενεργοποιήστε το βιβλίο εργασίας στο οποίο εργάζεστε και πατήστε Alt + F11. Αυτό θα ανοίξει το παράθυρο του VB Editor.
  • Στο Project Explorer στα αριστερά, κάντε δεξί κλικ σε οποιοδήποτε από τα αντικείμενα για αυτό το βιβλίο εργασίας και μεταβείτε στην ενότητα Εισαγωγή -> Ενότητα.
  • Επικολλήστε τον κώδικα στο παράθυρο κωδικού μονάδας.
  • Κλείστε το παράθυρο VB Editor (ή πατήστε Alt + F11 για να επιστρέψετε στο φύλλο εργασίας).

Τώρα έχετε τη μακροεντολή στο βιβλίο εργασίας σας. Για να εκτελέσετε τη μακροεντολή, μεταβείτε στην καρτέλα Προγραμματιστής -> Μακροεντολές. Στο παράθυρο διαλόγου Μακροεντολή, επιλέξτε τη μακροεντολή ExtractComment και κάντε κλικ στο Εκτέλεση.

Σημείωση: Βεβαιωθείτε ότι έχετε αποθηκεύσει το βιβλίο εργασίας με .Επέκταση XLS ή .XLSM.

#3 Δημιουργήστε ένα πρόσθετο

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

Δείτε πώς μπορείτε να δημιουργήσετε ένα πρόσθετο:

  • Μεταβείτε στο Αρχείο -> Αποθήκευση ως.
  • Στο παράθυρο διαλόγου Αποθήκευση ως, αλλάξτε τον τύπο Αποθήκευση ως σε .xlam.
    • Θα παρατηρήσετε ότι η διαδρομή του αρχείου όπου θα αποθηκευτεί αλλάζει αυτόματα. Μπορείτε να το αλλάξετε αν θέλετε.
  • Ανοίξτε ένα βιβλίο εργασίας του Excel και μεταβείτε στο Developer -> Add -ins -> Excel Add -ins.
  • Στο πλαίσιο διαλόγου Πρόσθετα, περιηγηθείτε και εντοπίστε το αρχείο που αποθηκεύσατε και κάντε κλικ στο κουμπί OK.

Μόλις ενεργοποιηθεί ένα πρόσθετο, μπορείτε να το χρησιμοποιήσετε σε οποιοδήποτε βιβλίο εργασίας. Για να το κάνετε αυτό, μεταβείτε στο Προγραμματιστής -> Μακροεντολές. Στο πλαίσιο διαλόγου Μακροεντολή, επιλέξτε τη μακροεντολή ExtractComment και εκτελέστε την.

Κατεβάστε το Παράδειγμα αρχείου

Ελπίζω ότι αυτός ο κωδικός θα σας εξοικονομήσει λίγο χρόνο. Πείτε μου τις σκέψεις σας στην ενότητα σχολίων.

Εάν εργάζεστε με το Excel, το VBA θα μπορούσε να είναι ένας ισχυρός σύμμαχος. Ανεβάστε τις δεξιότητές σας Excel στο επόμενο επίπεδο με το μάθημα Excel VBA.

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave