Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [Excel07] εξαγωγη στοιχειων απο πολλα φυλλα

Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 04-01-17, 13:55
Όνομα: Βουλα
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 28-10-2016
Μηνύματα: 41
Προεπιλογή εξαγωγη στοιχειων απο πολλα φυλλα

Χρονια Πολλα με υγεια και ευτυχια για ολους μας
Θα ηθελα την βοηθεια σας στο συννημενο υποδειγμα το οποιο πηρα από τα ετοιμα αντιστοιχα που υπαρχουν στο excel.
Προσπαθησα να δημιουργησω έναν συγκεντρωτικο πινακα σε νέο φυλλο οπου θα φαινονται τα στοιχεια (πελατης-τρεχον υπολοιπο) από πολλα φυλλα (στον συννημενο εχω τρια φυλλα αλλα θα προσθεσω κι αλλα), ώστε ανα πασα στιγμη να βλεπω σε ένα φυλλο τον πελατη και το τρεχον υπολοιπο καθως και το γενικο συνολο υπολοιπων ολων των πελατων. Οσες φορες και αν προσπαθησα μου βγαζει μηνυμα ότι χρειαζονται δεδομενα τουλαχιστον από δυο γραμμες , όταν δε ορισα περισσοτερες μου εβγαζε τους αυξοντες αριθμους.
Μηπως θα πρεπει να δημιουργησω καποια λιστα μονη μου και όχι ετοιμα προσχεδια;
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsx ΛΟΓΑΡΙΑΣΜΟΙ.xlsx (31,1 KB, 20 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 04-01-17, 19:41
Το avatar του χρήστη ChrisGT7
Διαχειριστής
Όνομα: Χρήστος Ζώρζος
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 20-09-2013
Περιοχή: Κοντά σε ηφαίστειο...
Μηνύματα: 1.046
Προεπιλογή

Καλησπέρα Βούλα, Καλή χρονιά και πάντα με υγεία!

Έφτιαξα το νέο φύλλο ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ με τρεις στήλες για τον κάθε πελάτη:
ΧΡΕΩΣΗ: το σύνολο της χρέωσης κάθε φύλλου πελάτη (Χρέωση Περιόδου)
ΠΙΣΤΩΣΗ: το σύνολο της πίστωσης κάθε φύλλου πελάτη, (Πίστωση Περιόδου)
ΥΠΟΛΟΙΠΟ: το σύνολο υπολοίπου πελάτη, όπως απεικονίζεται στο κελί G4 του αντίστοιχου φύλλου.

Πατώντας το κουμπί ΕΝΗΜΕΡΩΣΗ ΙΣΟΖΥΓΙΟΥ, καθαρίζονται όλες οι γραμμές του νέου φύλλου και ενημερώνονται με τα νέα δεδομένα που θα υπάρχουν στα αντίστοιχα φύλλα πελατών.

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

Στο φύλλο ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ η στήλη Α ενημερώνεται από το κελί D7 του κάθε φύλλου πελάτη, γιατί θεωρώ ότι εκεί θα υπάρχει πάντα το όνομά του. Αν πρέπει όμως να γράφεις κι άλλα πράγματα, όπως π.χ. αιτιολογία κίνησης, αριθμό τιμολογίου κ.τ.λ., τότε θα πρέπει να υπάρχει ένα κελί (ίσως αριστερά από το τρέχον υπόλοιπο) όπου θα παραμένει σταθερό η επωνυμία του πελάτη.

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

Ότι απορίες/βελτιώσεις έχεις, εδώ είμαστε! :)
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ.xlsm (45,6 KB, 46 εμφανίσεις)
__________________
Your Curiosity Will Be The Death Of You!
Απάντηση με παράθεση
  #3  
Παλιά 04-01-17, 19:47
Όνομα: Βουλα
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 28-10-2016
Μηνύματα: 41
Προεπιλογή

Ευχαριστω για την αμεση ανταποκριση. Θα το μελετησω και θα επανελθω. Οτι και να πω ειναι λιγο. Καθε φορα που απογοητευομαι επειτα απο προσπαθεια ημερων η βοηθεια σας ειναι λυτρωτικη. Εισθε ολοι υπεροχοι. Και παλι ευχαριστω
Απάντηση με παράθεση
  #4  
Παλιά 05-01-17, 07:49
Όνομα: Βουλα
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 28-10-2016
Μηνύματα: 41
Προεπιλογή

Καλημερα σε ολη την ομαδα
Και παλι Ευχαριστω για την βοηθεια η καλλιτερα .. λυση που μου εδωσες. Ακριβως οτι χρειαζομουν. Εισαι καταπληκτικος. Αν δεν σε κουραζω, και για να μαθαινω, μια και ειμαι εντελως αρχαρια, θα ηθελες να μου πεις πως εφτιαξες τον πινακα, η να με προσανατολισεις καπως ωστε να αρχισω να κανω καποια δειλα εστω βηματα και να δημιουργω μονη μου; Δεν ειναι σωστο καθε φορα να μου δινετε ετοιμη τροφη.
Σε ευχαριστω και παλι
Απάντηση με παράθεση
  #5  
Παλιά 05-01-17, 15:25
Το avatar του χρήστη ChrisGT7
Διαχειριστής
Όνομα: Χρήστος Ζώρζος
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 20-09-2013
Περιοχή: Κοντά σε ηφαίστειο...
Μηνύματα: 1.046
Προεπιλογή

Χαίρομαι που το αρχείο θα σου φανεί χρήσιμο στη δουλειά σου! :)

Ο σχεδιασμός του πίνακα, όχι η μορφοποίηση των κελιών, βασίζεται πάνω σε προγραμματισμό χρησιμοποιώντας τη γλώσσα VBA (Visual Basic for Applications). Αν θέλεις να ασχοληθείς με VBA θα πρέπει να έχεις και κάποιες βασικές γνώσεις προγραμματισμού (σύνταξη εντολών, χρήση μεταβλητών κ.τ.λ).

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

Ο κώδικας που ευθύνεται για τη συμπλήρωση του ισοζυγίου είναι ο παρακάτω:

Κώδικας:
Option Explicit

Sub Isozygio_Pelatwn()
    Dim I As Long, R As Long
    Dim Isoz As Worksheet, Sht As Worksheet
    
    If MsgBox("Θα γίνει ενημέρωση από τα αντίστοιχα φύλλα  πελατών." & vbCrLf & _
        "Θέλετε να συνεχίσετε;", vbQuestion + vbYesNo, "ΕΝΗΜΕΡΩΣΗ ΥΠΟΛΟΙΠΩΝ") = vbNo Then Exit Sub
    
    Set Isoz = Worksheets("ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ")
    Isoz.Range("A2:D" & Rows.Count).ClearContents
    
    For Each Sht In ThisWorkbook.Worksheets
        With Isoz
            If Sht.Name <> .Name Then
                R = .Range("A" & Rows.Count).End(xlUp).Row + 1
                .Hyperlinks.Add Anchor:=.Range("A" & R), Address:="", SubAddress:= _
                    Sht.Name & "!D7", TextToDisplay:=Sht.Name
                '.Range("A" & R).Value = Sht.Range("D7").Value
                .Range("B" & R).Value = Application.WorksheetFunction.Sum(Sht.Range("E:E"))
                .Range("C" & R).Value = Application.WorksheetFunction.Sum(Sht.Range("F:F"))
                .Range("D" & R).Value = Sht.Range("G4").Value
            End If
        End With
    Next
End Sub
Για να βρεις τον παραπάνω κώδικα, πάτα Alt+F11. Μια γρήγορη επεξήγησή του είναι η παρακάτω:

- Αφού σε ρωτήσει αν θέλεις να συνεχίσεις και απαντήσεις καταφατικά, τότε ελέγχει ένα-ένα το όνομα κάθε φύλλου ξεχωριστά. Αν είναι διαφορετικό από το "ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ", τότε θεωρεί ότι είναι καρτέλα πελάτη (γι' αυτό θέλει προσοχή όλα τα νέα φύλλα-καρτέλες που θα ανοίγεις να έχουν την ίδια ακριβώς γραμμογράφηση με τα υπόλοιπα).
- Από την κάθε καρτέλα πελάτη λοιπόν, παίρνει το όνομα που βρίσκεται στο κελί D7 και το αντιγράφει στο πρώτο κενό κελί του ισοζυγίου στη στήλη A. Η ίδια ακριβώς λογική ακολουθείται για τη χρέωση, πίστωση και υπόλοιπο (στήλες B, C, D αντίστοιχα), όπου στη χρέωση και πίστωση μεταφέρει τα αντίστοιχα αθροίσματα από τις στήλες E και F των καρτελών, ενώ στο υπόλοιπο μεταφέρει το ποσό που βρίσκει στο κελί G4.

Ελπίζω να μην σε μπέρδεψα...
__________________
Your Curiosity Will Be The Death Of You!

Τελευταία επεξεργασία από το χρήστη ChrisGT7 : 05-01-17 στις 15:42.
Απάντηση με παράθεση
  #6  
Παλιά 05-01-17, 15:47
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.321
Προεπιλογή

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

Αν δεν έχεις ασφαλιστικά, δεν μπορείς να έχεις ένα σωστό αποτέλεσμα.

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

Για δες το αρχείο και δοκίμασε κάτι άλλο...
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ.xlsm (54,9 KB, 34 εμφανίσεις)
Απάντηση με παράθεση
  #7  
Παλιά 05-01-17, 16:06
Το avatar του χρήστη ChrisGT7
Διαχειριστής
Όνομα: Χρήστος Ζώρζος
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 20-09-2013
Περιοχή: Κοντά σε ηφαίστειο...
Μηνύματα: 1.046
Προεπιλογή

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

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

Μερικοί έλεγχοι πάντως που ίσως βοηθούσαν για τη "σωστή" επιβεβαίωση του φύλλου είναι:
1) Αν το κελί B1 είναι ίσο με "ΙΣΟΖΥΓΙΟ ΛΟΓΑΡΙΑΣΜΟΥ".
2) Αν οι επικεφαλίδες είναι στη θέση τους, κ.α.

Αν θέλει η Βούλα να προσθέσω τέτοιου είδους ελέγχους, ευχαρίστως. Αν όμως διατηρεί πάντα την ίδια γραμμογράφηση σε όλα τα υπόλοιπα φύλλα, δε θεωρώ ότι υπάρχει λόγος για περισσότερους ελέγχους, πλην των τιμών (π.χ. αν είναι πληκτρολογηθεί κείμενο αντί αριθμού).
__________________
Your Curiosity Will Be The Death Of You!
Απάντηση με παράθεση
  #8  
Παλιά 05-01-17, 16:19
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.321
Προεπιλογή

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

Ποτέ δεν ξέρεις τι θα κάνει ο χρήστης...

Από την άλλη...
«πλην των τιμών (π.χ. αν είναι πληκτρολογηθεί κείμενο αντί αριθμού).....»

παρ' όλο που σου έβαλα να αθροίσει μια στήλη με κείμενα (Ε) σε => (Β)
το αποτέλεσμα ήταν μηδέν (0) και το έγραψε δεν «χτύπησε»...κάποιο σφάλμα
παρ' όλο που δεν υπάρχει έλεγχος...


.Range("B" & R).Value = Application.WorksheetFunction.Sum(Sht.Range("E:E") )

*Σημείωση
Οι Αμερικάνικοι κώδικες έχουν απίστευτα λάθη...
Απάντηση με παράθεση
  #9  
Παλιά 06-01-17, 07:59
Όνομα: Βουλα
Έκδοση λογισμικού Office: Ms-Office 2010, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 28-10-2016
Μηνύματα: 41
Προεπιλογή

Χρηστο και Σπυρο, Καλημερα και χιλια "ευχαριστω" για τις συμβουλες σας. Ειναι πολυτιμες. Χρηστο μου ακολουθησα τις οδηγιες σου σχετικα με τις εντολες VBA αν και λογω αγνοιας μου φαινονται βουνο. Κατεβασα καποιες οδηγιες, βημα-βημα που βρηκα στο διαδικτυο και ηδη ξεκινησα "αυτοδιδασκαλια"

Οσον αφορα το συνημενο, οντως ολα τα φυλλα θα ειναι τα ιδια (αλλαζουν μονον ποσα-ονοματα). Το μονο που προσθεσα ειναι ΣΠ και απεικονηση. Σπυρο, Μηπως ηταν λαθος μου; Το επισυναπτω να το δειτε.
Πολλα -πολλα ευχαριστω. Δεν εχω λογια
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm ΙΣΟΖΥΓΙΟ ΠΕΛΑΤΩΝ (1).xlsm (54,3 KB, 39 εμφανίσεις)
Απάντηση με παράθεση
  #10  
Παλιά 06-01-17, 08:06
Το avatar του χρήστη Spirosgr
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.321
Προεπιλογή

Καλημέρα
Αυτό ακριβώς προσπάθησα να εξηγήσω στον Χρήστο, στο προηγούμενο post.

Όχι το να προσθέσεις, αφαιρέσεις, τροποποιήσεις φύλλα δεν είναι λάθος σου.

Αλλά δεν «δουλεύει» ο συγκεκριμένος κώδικας σωστά...

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

Παρεπιμπτόντως, οι καρτέλες που πήρες από το template, δεν είναι ότι καλύτερο...
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Γενικά] Πολλά φύλλα εργασίας asterisk Excel - Ερωτήσεις / Απαντήσεις 7 13-06-14 01:51
[VBA] Αναζήτηση στοιχείων από δυο φύλλα και καταχώριση των επιλεγμένων σε νέο anestaki Excel - Ερωτήσεις / Απαντήσεις 6 05-03-14 21:16
[Excel07] Αυτόματη μεταφορά στοιχείων από διαφορετικά φύλλα Excel ggatzos Excel - Ερωτήσεις / Απαντήσεις 0 28-06-13 21:07
[Excel07] Άντληση στοιχείων απο φύλλα εργασίας σε συγκεντρωτικό φύλλο ggatzos Excel - Ερωτήσεις / Απαντήσεις 16 26-05-13 18:16
[Συναρτήσεις] Αναζήτηση σε πολλα φύλλα manolis Excel - Ερωτήσεις / Απαντήσεις 5 09-06-10 17:17


Η ώρα είναι 10:49.