Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ. |
![]() |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
![]()
Την καλησπέρα μου σε όλους. Χτες μου ζήτησε κάτι ο Διευθυντής μου, το οποίο ξεφεύγει λίγο από τις ικανότητες και τις γνώσεις μου. Έχουμε 48 διαφορετικά αρχεία Excel με 8-10 φύλλα εργασίας το καθένα, όπου περνάμε τις βαθμολογίες των μαθητών μας. Μου ζήτησε λοιπόν, αν ο μέσος όρος ενός μαθήματος είναι πάνω από 18,5 να βγαίνει ένα προειδοποιητικό μήνυμα (π.χ. "Υψηλή βαθμολογία") και - αν είναι δυνατόν - να μην αφήνει τον χρήστη να αποθηκεύσει το αρχείο αν δεν πέσει ο μέσος όρος κάτω από 18,5. Ήδη στα αρχεία υπάρχουν διάφορες μακροεντολές με βάση τις οποίες αυτοματοποιούνται πολλές διεργασίες - να είναι καλά τα παιδιά του forum - αλλά αυτό είναι κάτι που δεν πάει το μυαλό μου πως μπορεί να γίνει (ούτως ή άλλως από VBA...) Αν βρεθεί τρόπος να γίνει κάτι τέτοιο θα ήθελα και μια πρόταση σχετικά με το πως μπορεί να περαστεί αυτή η διαδικασία, όσο πιο εύκολα γίνεται, σε 450 -480 διαφορετικά φύλλα εργασίας. Ευχαριστώ για τον χρόνο σας. Ελπίζω στην καθοδήγησή σας. |
#2
| |||
| |||
![]()
Καλημέρα σε όλο το forum. Ψάχνοντας στο διαδίκτυο να βρω ιδέες για να λύσω το θέμα μου κατέληξα στον παρακάτω κώδικα: "Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim WS_Count As Integer Dim I As Integer WS_Count = ActiveWorkbook.Worksheets.Count For I = 1 To WS_Count If Application.Sheets(I).Range("S22").Value > 18.5 Then Cancel = True MsgBox "Η αποθήκευση ακυρώθηκε." & Chr(13) & "Ο μέσος όρος βαθμολογίας στο μάθημα" & Chr(13) & "είναι πολύ υψηλός." & Chr(13) & "Παρακαλώ επανεξετάστε τους βαθμούς σας." & Chr(13) & "Εκ της Διευθύνσεως." End If Next I End Sub" Σε κάποιες δοκιμές που έχω κάνει φαίνεται να δουλεύει όπως πρέπει. Η μόνη περίπτωση που παρατήρησα να έχει πρόβλημα είναι όταν δεν υπάρχουν βαθμοί στο φύλλο εργασίας - άρα δεν υπάρχει και μέσος όρος - οπότε δεν αφήνει το βιβλίο εργασίας να αποθηκευτεί. Ενώ λογικά θα έπρεπε, αφού η τιμή του κελιού που ελέγχει ο κώδικας είναι κάτω από 18,5 (στην πραγματικότητα δεν υπάρχει τιμή στο κελί αυτό). Μήπως κάποιος μπορεί να βοηθήσει να ξεπεράσουμε αυτό το τελευταίο θέμα; Ευχαριστώ πολύ. |
#3
| |||
| |||
![]()
Καλησπέρα Δοκίμασε τον κώδικα: Κώδικας: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim WS_Count As Integer Dim I As Integer, mo As Variant WS_Count = ActiveWorkbook.Worksheets.Count For I = 1 To WS_Count mo = Application.Sheets(I).Range("S22").Value If (mo > 18.5) * (mo <> 0) * (mo <> "") Then Cancel = True MsgBox "Η αποθήκευση ακυρώθηκε." & Chr(13) & _ "Ο μέσος όρος βαθμολογίας στο μάθημα" & Chr(13) & _ "είναι πολύ υψηλός." & Chr(13) & _ "Παρακαλώ επανεξετάστε τους βαθμούς σας." & Chr(13) & _ "Εκ της Διευθύνσεως." End If Next I End Sub |
#4
| |||
| |||
![]()
Καλημέρα Γιώργο και σ' ευχαριστώ για την απάντησή σου. Η αποθήκευση του αρχείου προχωράει τώρα κανονικά σε κάθε περίπτωση. Να είσαι καλά και καλή συνέχεια. |
#5
| |||
| |||
![]()
Καλησπερα, επειδη με ενδιαφερει η λυση που προτεινατε θα μπορουσα να το χρησιμοποιησω στο αρχειο μου. Αν καταλαβα καλα, δεν επιτρεπει την αποθηκευση αρχειου αν δεν πληροι καποιες προυποθεσεις τιμων σε κελια
|
#6
| |||
| |||
![]()
Καλησπέρα Ο κώδικας δεν επιτρέπει την αποθήκευση, όταν η τιμή στο κελί S22, σε όλα τα φύλλα, δεν ικανοποιεί κάποια συνθήκη. Με κατάλληλη προσαρμογή θα μπορούσες να τον χρησιμοποιήσεις. |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[Γενικά] Αποθήκευση αρχείου | manolis | Excel - Ερωτήσεις / Απαντήσεις | 0 | 13-02-20 16:29 |
[VBA] Δημιουργία αρχείου για την αποθήκευση συγκεντρωτικών φακελων | agrbita | Excel - Ερωτήσεις / Απαντήσεις | 8 | 25-09-18 11:05 |
[Excel07] Εισαγωγή δεδομένων από Excel και αυτόματη αποθήκευση | sotisanis | Excel - Ερωτήσεις / Απαντήσεις | 1 | 03-11-13 11:00 |
[Γενικά] βοήθεια με άνοιγμα αρχείου excel | koumpana | Excel - Ερωτήσεις / Απαντήσεις | 1 | 20-06-12 11:49 |
[Γενικά] Μορφοποιήσεις αρχείου Excel και Αναζήτηση | kormos | Excel - Ερωτήσεις / Απαντήσεις | 8 | 15-02-11 11:34 |
Η ώρα είναι 16:39.