Καθορίστε τη συμβατότητα του αρχείου Excel μέσω προγραμματισμού στο .NET

Εισαγωγή

Στον σημερινό κόσμο που βασίζεται σε δεδομένα, η διαχείριση και ο χειρισμός αρχείων Excel μέσω προγραμματισμού έχει καταστεί απαραίτητη για πολλούς προγραμματιστές. Εάν εργάζεστε με το Excel σε .NET, το Aspose.Cells είναι μια ισχυρή βιβλιοθήκη που διευκολύνει τη δημιουργία, την ανάγνωση, την τροποποίηση και την αποθήκευση αρχείων Excel. Ένα σημαντικό χαρακτηριστικό αυτής της βιβλιοθήκης σας επιτρέπει να καθορίσετε τη συμβατότητα των αρχείων Excel μέσω προγραμματισμού. Σε αυτό το σεμινάριο, θα διερευνήσουμε τον τρόπο χειρισμού αρχείων Excel, εστιάζοντας ιδιαίτερα στη διαχείριση της συμβατότητας χρησιμοποιώντας το Aspose.Cells για .NET. Στο τέλος, θα καταλάβετε πώς να ορίσετε τη συμβατότητα για αρχεία Excel, ειδικά για συγκεντρωτικούς πίνακες, ενώ ανανεώνετε και διαχειρίζεστε δεδομένα.

Προαπαιτούμενα

Πριν βουτήξετε στη φάση της κωδικοποίησης, βεβαιωθείτε ότι έχετε τα εξής:

  1. Βασικές γνώσεις C#: Εφόσον θα γράφουμε κώδικα σε C#, η εξοικείωση με τη γλώσσα θα σας βοηθήσει να κατανοήσετε καλύτερα το σεμινάριο.
  2. Aspose.Cells για βιβλιοθήκη .NET: Μπορείτε να το κατεβάσετε από τοΣελίδα εκδόσεων Aspose CellsΕάν δεν το έχετε κάνει ήδη, εξετάστε το ενδεχόμενο να αποκτήσετε μια δωρεάν δοκιμή για να εξερευνήσετε πρώτα τις δυνατότητές του.
  3. Visual Studio: Ένα IDE όπου μπορείτε να γράψετε και να δοκιμάσετε αποτελεσματικά τον κώδικα C#.
  4. Δείγμα αρχείου Excel: Βεβαιωθείτε ότι έχετε ένα δείγμα αρχείου Excel, κατά προτίμηση ένα που περιέχει έναν συγκεντρωτικό πίνακα για την επίδειξη. Για το παράδειγμά μας, θα χρησιμοποιήσουμεsample-pivot-table.xlsx.

Με αυτές τις προϋποθέσεις, ας ξεκινήσουμε με τη διαδικασία κωδικοποίησης.

Εισαγωγή πακέτων

Πριν ξεκινήσετε τη σύνταξη της αίτησής σας, πρέπει να συμπεριλάβετε τους απαραίτητους χώρους ονομάτων στον κώδικά σας για να χρησιμοποιήσετε αποτελεσματικά τη βιβλιοθήκη Aspose.Cells. Δείτε πώς να το κάνετε.

Εισαγωγή χώρου ονομάτων Aspose.Cells

using System.IO;
using System;
using Aspose.Cells;
using Aspose.Cells.Pivot;
using System.Drawing;

Αυτή η γραμμή κώδικα διασφαλίζει ότι μπορείτε να έχετε πρόσβαση σε όλες τις κλάσεις και τις μεθόδους στη βιβλιοθήκη Aspose.Cells.

Τώρα, ας αναλύσουμε τη διαδικασία λεπτομερώς για να διασφαλίσουμε ότι όλα είναι ξεκάθαρα και κατανοητά.

Βήμα 1: Ρύθμιση του καταλόγου σας

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

// Η διαδρομή προς τον κατάλογο εγγράφων.
string dataDir = "Your Document Directory";

Εδώ, αντικαταστήστε"Your Document Directory"με την πραγματική διαδρομή προς τα αρχεία Excel. Εδώ θα πρέπει να βρίσκεται το δείγμα αρχείου του συγκεντρωτικού πίνακα.

Βήμα 2: Φορτώστε το αρχείο προέλευσης Excel

Στη συνέχεια, πρέπει να φορτώσουμε το αρχείο Excel που περιέχει το δείγμα συγκεντρωτικού πίνακα.

// Φορτώστε το αρχείο προέλευσης excel που περιέχει δείγμα συγκεντρωτικού πίνακα
Workbook wb = new Workbook(dataDir + "sample-pivot-table.xlsx");

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

Βήμα 3: Πρόσβαση στα φύλλα εργασίας

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

// Πρόσβαση στο πρώτο φύλλο εργασίας που περιέχει δεδομένα συγκεντρωτικού πίνακα
Worksheet dataSheet = wb.Worksheets[0];

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

Βήμα 4: Χειρισμός δεδομένων κυψέλης

Στη συνέχεια, θα τροποποιήσετε ορισμένες τιμές κελιών στο φύλλο εργασίας.

Βήμα 4.1: Τροποποίηση κελιού A3

Ας ξεκινήσουμε αποκτώντας πρόσβαση στο κελί A3 και ορίζοντας την τιμή του.

// Πρόσβαση στο κελί A3 και ορίζει τα δεδομένα του
Cells cells = dataSheet.Cells;
Cell cell = cells["A3"];
cell.PutValue("FooBar");

Αυτό το απόσπασμα κώδικα ενημερώνει το κελί A3 με την τιμή “FooBar”.

Βήμα 4.2: Τροποποιήστε το κελί B3 με μακρά συμβολοσειρά

Τώρα, ας ορίσουμε μια μεγάλη συμβολοσειρά στο κελί B3, η οποία υπερβαίνει τα τυπικά όρια χαρακτήρων του Excel.

// Πρόσβαση στο κελί B3, ορίζει τα δεδομένα του
string longStr = "Very long text 1. very long text 2.... [continue your long string]";
cell = cells["B3"];
cell.PutValue(longStr);

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

Βήμα 5: Ελέγξτε το μήκος του κελιού B3

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

// Εκτυπώστε το μήκος της συμβολοσειράς του κελιού B3
Console.WriteLine("Length of original data string: " + cell.StringValue.Length);

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

Βήμα 6: Ορίστε άλλες τιμές κελιών

Τώρα θα έχουμε πρόσβαση σε περισσότερα κελιά και θα ορίσουμε κάποιες τιμές.

// Πρόσβαση στο κελί C3 και ορίζει τα δεδομένα του
cell = cells["C3"];
cell.PutValue("closed");

// Αποκτήστε πρόσβαση στο κελί D3 και ορίζει τα δεδομένα του
cell = cells["D3"];
cell.PutValue("2016/07/21");

Κάθε ένα από αυτά τα αποσπάσματα ενημερώνει πολλά πρόσθετα κελιά μέσα στο φύλλο εργασίας.

Βήμα 7: Πρόσβαση στον Συγκεντρωτικό Πίνακα

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

//Πρόσβαση στο δεύτερο φύλλο εργασίας που περιέχει συγκεντρωτικό πίνακα
Worksheet pivotSheet = wb.Worksheets[1];

// Πρόσβαση στον συγκεντρωτικό πίνακα
PivotTable pivotTable = pivotSheet.PivotTables[0];

Αυτό το απόσπασμα σάς επιτρέπει να χειρίζεστε τον συγκεντρωτικό πίνακα για ρυθμίσεις συμβατότητας.

Βήμα 8: Ορισμός συμβατότητας για το Excel 2003

Είναι σημαντικό να ορίσετε εάν ο συγκεντρωτικός πίνακας σας είναι συμβατός με το Excel 2003 ή όχι.

// Η ιδιότητα IsExcel2003Compatible δείχνει εάν ο Συγκεντρωτικός Πίνακας είναι συμβατός με το Excel2003 κατά την ανανέωση του Συγκεντρωτικού Πίνακα
pivotTable.IsExcel2003Compatible = true;
pivotTable.RefreshData();
pivotTable.CalculateData();

Εδώ ξεκινά η πραγματική μεταμόρφωση. Με ρύθμισηIsExcel2003Compatible ναtrue, περιορίζετε τα μήκη χαρακτήρων στα 255 κατά την ανανέωση.

Βήμα 9: Ελέγξτε το μήκος μετά τη ρύθμιση συμβατότητας

Αφού ρυθμίσετε τη συμβατότητα, ας δούμε πώς επηρεάζει τα δεδομένα.

// Ελέγξτε την τιμή του κελιού B5 του συγκεντρωτικού φύλλου.
Cell b5 = pivotSheet.Cells["B5"];
Console.WriteLine("Length of cell B5 after setting IsExcel2003Compatible property to True: " + b5.StringValue.Length);

Πιθανότατα θα δείτε μια έξοδο που επιβεβαιώνει το φαινόμενο περικοπής εάν τα αρχικά δεδομένα υπερβαίνουν τους 255 χαρακτήρες.

Βήμα 10: Αλλάξτε τη ρύθμιση συμβατότητας

Τώρα, ας αλλάξουμε τη ρύθμιση συμβατότητας και ας ελέγξουμε ξανά.

//Τώρα ορίστε την ιδιότητα IsExcel2003Compatible σε false και κάντε ξανά ανανέωση
pivotTable.IsExcel2003Compatible = false;
pivotTable.RefreshData();
pivotTable.CalculateData();

Αυτό επιτρέπει στα δεδομένα σας να αντικατοπτρίζουν το αρχικό τους μήκος χωρίς τους προηγούμενους περιορισμούς.

Βήμα 11: Επαληθεύστε ξανά το μήκος

Ας επαληθεύσουμε ότι τα δεδομένα αντικατοπτρίζουν τώρα με ακρίβεια το πραγματικό τους μήκος.

// Τώρα θα εκτυπώσει το αρχικό μήκος των δεδομένων κυψέλης. Τα δεδομένα δεν έχουν περικοπεί τώρα.
b5 = pivotSheet.Cells["B5"];
Console.WriteLine("Length of cell B5 after setting IsExcel2003Compatible property to False: " + b5.StringValue.Length);

Θα πρέπει να δείτε ότι η έξοδος επιβεβαιώνει την αφαίρεση της περικοπής.

Βήμα 12: Μορφοποιήστε τα κελιά

Για να βελτιώσετε την οπτική εμπειρία, ίσως θέλετε να μορφοποιήσετε τα κελιά.

// Ορίστε το ύψος γραμμής και το πλάτος της στήλης του κελιού B5 και αναδιπλώστε επίσης το κείμενό του
pivotSheet.Cells.SetRowHeight(b5.Row, 100);
pivotSheet.Cells.SetColumnWidth(b5.Column, 65);
Style st = b5.GetStyle();
st.IsTextWrapped = true;
b5.SetStyle(st);

Αυτές οι γραμμές κώδικα κάνουν τα δεδομένα πιο ευανάγνωστα προσαρμόζοντας τις διαστάσεις του κελιού και ενεργοποιώντας την αναδίπλωση κειμένου.

Βήμα 13: Αποθηκεύστε το βιβλίο εργασίας

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

// Αποθήκευση βιβλίου εργασίας σε μορφή xlsx
wb.Save(dataDir + "SpecifyCompatibility_out.xlsx", SaveFormat.Xlsx);

Η επιλογή της κατάλληλης μορφής αρχείου είναι ζωτικής σημασίας κατά την αποθήκευση αρχείων Excel. ΟXlsxΗ μορφή χρησιμοποιείται ευρέως και είναι συμβατή με πολλές εκδόσεις του Excel.

Σύναψη

Συγχαρητήρια! Τώρα έχετε προγραμματίσει ρυθμίσεις συμβατότητας αρχείων Excel χρησιμοποιώντας το Aspose.Cells για .NET. Αυτό το σεμινάριο περιγράφει κάθε βήμα, από τη ρύθμιση του περιβάλλοντός σας έως την αλλαγή των ρυθμίσεων συμβατότητας για συγκεντρωτικούς πίνακες. Εάν έχετε εργαστεί ποτέ με δεδομένα που απαιτούσαν συγκεκριμένους περιορισμούς ή συμβατότητα, αυτή είναι μια δεξιότητα που δεν θα θέλετε να αγνοήσετε.

Συχνές ερωτήσεις

Τι είναι το Aspose.Cells;

Το Aspose.Cells είναι μια βιβλιοθήκη .NET που έχει σχεδιαστεί για να βοηθά τους προγραμματιστές να δημιουργούν, να χειρίζονται και να μετατρέπουν αρχεία Excel απρόσκοπτα.

Γιατί είναι σημαντική η συμβατότητα του Excel;

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

Μπορώ να δημιουργήσω συγκεντρωτικούς πίνακες μέσω προγραμματισμού με το Aspose.Cells;

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

Πώς μπορώ να ελέγξω το μήκος μιας συμβολοσειράς σε ένα κελί του Excel;

Μπορείτε να χρησιμοποιήσετε τοStringValue ιδιοκτησία του αCell αντικείμενο για να λάβετε το περιεχόμενο του κελιού και μετά καλέστε το.Length ιδιότητα για να μάθετε το μήκος της χορδής.

Μπορώ να προσαρμόσω τη μορφοποίηση κελιών πέρα από το ύψος και το πλάτος της σειράς;

Απολύτως! Το Aspose.Cells επιτρέπει εκτεταμένη μορφοποίηση κελιών. Μπορείτε να αλλάξετε στυλ γραμματοσειράς, χρώματα, περιγράμματα, μορφές αριθμών και πολλά άλλα μέσω τουStyle τάξη.