Εφαρμογή τύπων φύλλου εργασίας διαγράμματος σε παρουσιάσεις με C++
Επισκόπηση
Ένα φύλλο εργασίας διαγράμματος είναι η πηγή δεδομένων πίσω από ένα διάγραμμα σε μια παρουσίαση. Αποθηκεύει τα ονόματα κατηγοριών και σειρών μαζί με τις αριθμητικές τιμές που εμφανίζει το διάγραμμα. Στο Aspose.Slides, αυτό το φύλλο εργασίας είναι διαθέσιμο μέσω του βιβλίου εργασίας δεδομένων διαγράμματος, που σας επιτρέπει να εργάζεστε με τα δεδομένα του διαγράμματος προγραμματιστικά.
Αυτό το άρθρο εξηγεί πώς να χρησιμοποιήσετε τύπους φύλλου εργασίας σε δεδομένα διαγράμματος ώστε οι τιμές των κελιών να υπολογίζονται και να ενημερώνονται αυτόματα αντί να εισάγονται χειροκίνητα. Δείχνει πώς να αναθέτετε τύπους, να χρησιμοποιείτε αναφορές στυλ A1 και R1C1, να επανυπολογίζετε τους τύπους του βιβλίου εργασίας και να εργάζεστε με τις υποστηριζόμενες σταθερές, τελεστές, αναφορές κελιών και προορισμένες λειτουργίες διαθέσιμες για φύλλα εργασίας διαγραμμάτων σε παρουσιάσεις.
Σχετικά με τους τύπους φύλλου εργασίας διαγράμματος σε παρουσιάσεις
Φύλλο εργασίας διαγράμματος (ή φύλλο εργασίας γραφήματος) σε παρουσίαση είναι η πηγή δεδομένων του διαγράμματος. Το φύλλο εργασίας διαγράμματος περιέχει δεδομένα, τα οποία αντιπροσωπεύονται στο διάγραμμα με γραφικό τρόπο. Όταν δημιουργείτε ένα διάγραμμα στο PowerPoint, το φύλλο εργασίας που συνδέεται με αυτό το διάγραμμα δημιουργείται αυτόματα. Το φύλλο εργασίας δημιουργείται για όλους τους τύπους διαγραμμάτων: γραμμικού, ράβδου, ηλιακού εκρήγνυσης, πίτας κ.λπ. Για να δείτε το φύλλο εργασίας σε PowerPoint, πρέπει να κάνετε διπλό κλικ στο διάγραμμα:

Το φύλλο εργασίας διαγράμματος περιέχει τα ονόματα των στοιχείων του διαγράμματος (Όνομα Κατηγορίας: Category1, Όνομα Σειράς) και έναν πίνακα με αριθμητικά δεδομένα κατάλληλα για αυτές τις κατηγορίες και σειρές. Από προεπιλογή, όταν δημιουργείτε νέο διάγραμμα, τα δεδομένα του φύλλου εργασίας ορίζονται με τα προεπιλεγμένα δεδομένα. Στη συνέχεια μπορείτε να αλλάξετε τα δεδομένα του φύλλου εργασίας χειροκίνητα.
Συνήθως, το διάγραμμα αντιπροσωπεύει σύνθετα δεδομένα (π.χ. χρηματοοικονομικοί αναλυτές, επιστημονικοί αναλυτές), έχοντας κελιά που υπολογίζονται από τις τιμές σε άλλα κελιά ή από άλλα δυναμικά δεδομένα. Ο υπολογισμός της τιμής ενός κελιού χειροκίνητα και η σκληρή κωδικοποίηση της στο κελί καθιστούν δύσκολη τη μελλοντική αλλαγή του. Αν αλλάξετε την τιμή ενός συγκεκριμένου κελιού, όλα τα κελιά που εξαρτώνται από αυτό θα χρειαστεί να ενημερωθούν επίσης. Επιπλέον, τα δεδομένα του πίνακα μπορεί να εξαρτώνται από δεδομένα άλλων πινάκων, δημιουργώντας ένα σύνθετο σχήμα δεδομένων παρουσίασης με ανάγκη ευέλικτης ενημέρωσης.
Τύπος φύλλου εργασίας διαγράμματος σε παρουσίαση είναι μια έκφραση για αυτόματο υπολογισμό και ενημέρωση των δεδομένων του φύλλου εργασίας διαγράμματος. Ο τύπος ορίζει τη λογική υπολογισμού δεδομένων για ένα συγκεκριμένο κελί ή σύνολο κελιών. Ο τύπος είναι μαθηματικός ή λογικός, χρησιμοποιώντας: αναφορές κελιών, μαθηματικές συναρτήσεις, λογικούς τελεστές, αριθμητικούς τελεστές, συναρτήσεις μετατροπής, σταθερές συμβολοσειρών κ.λπ. Ο ορισμός του τύπου γράφεται σε ένα κελί, και αυτό το κελί δεν περιέχει απλή τιμή. Ο τύπος υπολογίζει την τιμή και την επιστρέφει, ώστε η τιμή αυτή να εκχωρηθεί στο κελί. Οι τύποι φύλλου εργασίας διαγράμματος σε παρουσιάσεις είναι ουσιαστικά οι ίδιοι με τους τύπους του Excel, και υποστηρίζονται οι ίδιες προεπιλεγμένες συναρτήσεις, τελεστές και σταθερές για την υλοποίησή τους.
Στο Aspose.Slides το φύλλο εργασίας διαγράμματος αναπαρίσταται με τη μέθοδο ChartData::get_ChartDataWorkbook() του τύπου IChartDataWorkbook. Ο τύπος φύλλου εργασίας μπορεί να ανατεθεί και να τροποποιηθεί με τη μέθοδο IChartDataCell::set_Formula(). Η ακόλουθη λειτουργικότητα υποστηρίζεται για τύπους στο Aspose.Slides:
- Λογικές σταθερές
- Αριθμητικές σταθερές
- Σταθερές συμβολοσειράς
- Σταθερές σφαλμάτων
- Αριθμητικοί τελεστές
- Τελεστές σύγκρισης
- Αναφορές κελιών στυλ A1
- Αναφορές κελιών στυλ R1C1
- Προκαθορισμένες συναρτήσεις
Κανονικά, τα φύλλα εργασίας αποθηκεύουν τις τελευταίες υπολογισμένες τιμές τύπων. Αν μετά τη φόρτωση της παρουσίασης τα δεδομένα του διαγράμματος δεν είχαν αλλάξει, η μέθοδος IChartDataCell.get_Value() επιστρέφει αυτές τις τιμές κατά την ανάγνωση. Αλλά, αν τα δεδομένα του φύλλου εργασίας είχαν αλλάξει, η μέθοδος ChartDataCell.get_Value() ρίχνει την εξαίρεση CellUnsupportedDataException για τους μη υποστηριζόμενους τύπους. Αυτό συμβαίνει επειδή όταν οι τύποι αναλύονται επιτυχώς, καθορίζονται οι εξαρτήσεις των κελιών και η ορθότητα των τελευταίων τιμών. Αν όμως ο τύπος δεν μπορεί να αναλυθεί, δεν μπορεί να εγγυηθεί η ορθότητα της τιμής του κελιού.
Προσθήκη τύπου φύλλου εργασίας διαγράμματος σε παρουσίαση
Πρώτα, προσθέστε ένα διάγραμμα στην πρώτη διαφάνεια μιας νέας παρουσίασης με IShapeCollection::AddChart(). Το φύλλο εργασίας του διαγράμματος δημιουργείται αυτόματα και μπορεί να προσεγγιστεί με τη μέθοδο ChartData::get_ChartDataWorkbook():
auto presentation = System::MakeObject<Presentation>();
auto chart = presentation->get_Slides()->idx_get(0)->get_Shapes()->AddChart(ChartType::ClusteredColumn, 150.0f, 150.0f, 500.0f, 300.0f);
auto workbook = chart->get_ChartData()->get_ChartDataWorkbook();
// ...
Ας γράψουμε κάποιες τιμές σε κελιά με τη μέθοδο IChartDataCell.set_Value() του τύπου Object, που σημαίνει ότι μπορείτε να περάσετε οποιαδήποτε τιμή στη μέθοδο:
workbook->GetCell(0, u"F2")->set_Value(System::ObjectExt::Box<double>(-2.5));
workbook->GetCell(0, u"G3")->set_Value(System::ObjectExt::Box<double>(6.3));
workbook->GetCell(0, u"H4")->set_Value(System::ObjectExt::Box<int32_t>(3));
Τώρα για να γράψετε τύπο στο κελί, μπορείτε να χρησιμοποιήσετε τη μέθοδο IChartDataCell::set_Formula():
Note: IChartDataCell::set_Formula() χρησιμοποιείται για ορισμό αναφορών κελιών στυλ A1.
Για να ορίσετε την αναφορά κελιού R1C1Formula, μπορείτε να χρησιμοποιήσετε τη μέθοδο IChartDataCell::set_R1C1Formula():
Τότε, αν προσπαθήσετε να διαβάσετε τις τιμές από τα κελιά B2 και C2, θα υπολογιστούν:
auto value1 = cell1->get_Value(); // 7.8
auto value2 = cell2->get_Value(); // 2.1
Λογικές Σταθερές
Μπορείτε να χρησιμοποιήσετε λογικές σταθερές όπως FALSE και TRUE σε τύπους κελιών:
Αριθμητικές Σταθερές
Οι αριθμοί μπορούν να χρησιμοποιηθούν σε κοινή ή επιστημονική σημειογραφία για τη δημιουργία τύπων φύλλου εργασίας διαγράμματος:
Σταθερές Συμβολοσειράς
Μια σταθερά συμβολοσειράς (ή κυριολεκτική) είναι μια συγκεκριμένη τιμή που χρησιμοποιείται όπως είναι και δεν αλλάζει. Οι σταθερές συμβολοσειράς μπορεί να είναι: ημερομηνίες, κείμενα, αριθμοί κ.λπ.:
Σταθερές Σφαλμάτων
Κάποιες φορές δεν είναι δυνατόν να υπολογιστεί το αποτέλεσμα από τον τύπο. Σε αυτήν την περίπτωση, εμφανίζεται κωδικός σφάλματος στο κελί αντί για την τιμή του. Κάθε τύπος σφάλματος έχει συγκεκριμένο κωδικό:
- #DIV/0! - ο τύπος προσπαθεί να διαιρέσει με το μηδέν.
- #GETTING_DATA - μπορεί να εμφανιστεί σε κελί ενώ η τιμή του υπολογίζεται ακόμη.
- #N/A - λείπουν ή δεν είναι διαθέσιμες πληροφορίες. Κάποιοι λόγοι μπορεί να είναι: κενά κελιά στη φόρμουλα, επιπλέον κενό, ορθογραφικό λάθος κ.λπ.
- #NAME? - ένα συγκεκριμένο κελί ή άλλα αντικείμενα τύπου δεν μπορούν να βρεθούν με το όνομά τους.
- #NULL! - εμφανίζεται όταν υπάρχει λάθος στη φόρμουλα, π.χ. (,) ή κενό χαρακτήρα αντί για άνω κώλο (:).
- #NUM! - ο αριθμός στη φόρμουλα μπορεί να είναι άκυρος, πολύ μεγάλος ή πολύ μικρός κ.λπ.
- #REF! - άκυρη αναφορά κελιού.
- #VALUE! - μη αναμενόμενος τύπος τιμής. Για παράδειγμα, τιμή συμβολοσειράς σε αριθμητικό κελί.
Αριθμητικοί Τελεστές
Μπορείτε να χρησιμοποιήσετε όλους τους αριθμητικούς τελεστές σε τύπους φύλλου εργασίας διαγράμματος:
| Τελεστής | Σημασία | Παράδειγμα |
|---|---|---|
| + (σύμβολο συν) | Προσθήκη ή μονάδα με πρόσημμο + | 2 + 3 |
| - (σύμβολο αφαιρετικό) | Αφαίρεση ή άρνηση | 2 - 3 -3 |
| * (αστέρι) | Πολλαπλασιασμός | 2 * 3 |
| / (προεξοχή) | Διαίρεση | 2 / 3 |
| % (ποσοστό) | Ποσοστό | 30% |
| ^ (caret) | Υψωση σε δύναμη | 2 ^ 3 |
Note: Για αλλαγή της σειράς εκτίμησης, περικλείστε σε παρενθέσεις το τμήμα του τύπου που πρέπει να υπολογιστεί πρώτο.
Τελεστές Σύγκρισης
Μπορείτε να συγκρίνετε τις τιμές των κελιών με τους τελεστές σύγκρισης. Όταν δύο τιμές συγκρίνονται με αυτούς τους τελεστές, το αποτέλεσμα είναι λογική τιμή είτε TRUE είτε FALSE:
| Τελεστής | Σημασία | Σημασία |
|---|---|---|
| = (σύμβολο ίσου) | Ισότητα | A2 = 3 |
| <> (σύμβολο ανισότητας) | Ανισότητα | A2 <> 3 |
| > (σύμβολο μεγαλύτερου) | Μεγαλύτερο από | A2 > 3 |
| >= (σύμβολο μεγαλύτερου ή ίσου) | Μεγαλύτερο ή ίσο με | A2 >= 3 |
| < (σύμβολο μικρότερου) | Μικρότερο από | A2 < 3 |
| <= (σύμβολο μικρότερου ή ίσου) | Μικρότερο ή ίσο με | A2 <= 3 |
Αναφορές Κελιών Στυλ A1
Αναφορές κελιών στυλ A1 χρησιμοποιούνται για τα φύλλα εργασίας, όπου η στήλη έχει αναγνωριστικό γραμμάτου (π.χ. “A") και η γραμμή αριθμητικό αναγνωριστικό (π.χ. “1"). Οι αναφορές μπορούν να χρησιμοποιηθούν ως εξής:
| Αναφορά κελιού | Παράδειγμα | ||
|---|---|---|---|
| Απόλυτη | Σχετική | Μικτή | |
| Κελί | $A$2 | A2 | A$2 $A2 |
| Γραμμή | $2:$2 | 2:2 | - |
| Στήλη | $A:$A | A:A | - |
| Περιοχή | $A$2:$C$4 | A2:C4 | $A$2:C4 A$2:$C4 |
Παράδειγμα χρήσης αναφοράς κελιού στυλ A1 σε τύπο:
Αναφορές Κελιών Στυλ R1C1
Αναφορές κελιών στυλ R1C1 χρησιμοποιούνται για τα φύλλα εργασίας, όπου τόσο η γραμμή όσο και η στήλη έχουν αριθμητικό αναγνωριστικό. Οι αναφορές μπορούν να χρησιμοποιηθούν ως εξής:
| Αναφορά κελιού | Παράδειγμα | ||
|---|---|---|---|
| Απόλυτη | Σχετική | Μικτή | |
| Κελί | R2C3 | R[2]C[3] | R2C[3] R[2]C3 |
| Γραμμή | R2 | R[2] | - |
| Στήλη | C3 | C[3] | - |
| Περιοχή | R2C3:R5C7 | R[2]C[3]:R[5]C[7] | R2C3:R[5]C[7] R[2]C3:R5C[7] |
Παράδειγμα χρήσης αναφοράς κελιού στυλ R1C1 σε τύπο:
Προκαθορισμένες Συναρτήσεις
Υπάρχουν προκαθορισμένες συναρτήσεις που μπορούν να χρησιμοποιηθούν στους τύπους για την απλοποίηση της υλοποίησής τους. Αυτές οι συναρτήσεις ενσωματώνουν τις πιο συχνά χρησιμοποιημένες λειτουργίες, όπως:
- ABS
- AVERAGE
- CEILING
- CHOOSE
- CONCAT
- CONCATENATE
- DATE (σύστημα ημερομηνίας 1900)
- DAYS
- FIND
- FINDB
- IF
- INDEX (μορφή αναφοράς)
- LOOKUP (μορφή διανύσματος)
- MATCH (μορφή διανύσματος)
- MAX
- SUM
- VLOOKUP
Συχνές ερωτήσεις
Υποστηρίζονται εξωτερικά αρχεία Excel ως πηγή δεδομένων για διάγραμμα με τύπους;
Ναι. Το Aspose.Slides υποστηρίζει εξωτερικά βιβλία εργασίας ως πηγή δεδομένων διαγράμματος, επιτρέποντάς σας να χρησιμοποιήσετε τύπους από ένα XLSX εκτός της παρουσίασης.
Μπορούν οι τύποι διαγράμματος να αναφέρονται σε φύλλα εντός του ίδιου βιβλίου εργασίας με όνομα φύλλου;
Ναι. Οι τύποι ακολουθούν το τυπικό μοντέλο αναφοράς του Excel, έτσι μπορείτε να αναφερθείτε σε άλλα φύλλα εντός του ίδιου βιβλίου ή σε εξωτερικό βιβλίο. Για εξωτερικές αναφορές, συμπεριλάβετε τη διαδρομή και το όνομα του βιβλίου χρησιμοποιώντας τη σύνταξη του Excel.