Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [Συναρτήσεις] [Excel] Διασύνδεση αρχείων xlsx με συνάρτηση INDIRECT.

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

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 03-09-15, 09:28
Όνομα: Κωστής
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 02-09-2015
Μηνύματα: 4
Προεπιλογή [Excel] Διασύνδεση αρχείων xlsx με συνάρτηση INDIRECT.

Γεια σας και καλό φθινόπωρο!
Είμαι νέος στο forum. Θα ήθελα να ρωτήσω το εξής:
Χρησιμοποιώντας τη συνάρτηση INDIRECT, εισάγω τιμές στο αρχείο που δουλεύω από άλλα αρχεία. Το πρόβλημα είναι ότι για να δουλέψει αυτή η συνάρτηση, θα πρέπει τα αρχεία από τα οποία παίρνει τις τιμές να είναι ανοικτά.

Υπάρχει τρόπος να λαμβάνω τα δεδομένα που θέλω χωρίς να χρειάζεται να τα ανοίξω;
Είναι αρκετά "βαριά αρχεία" και ο υπολογιστής αργεί πολύ.

Ευχαριστώ πολύ!
Απάντηση με παράθεση
  #2  
Παλιά 03-09-15, 12:01
Το 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
Προεπιλογή

Καλημέρα
Κωστή, καλώς όρισες στην παρέα μας.

Ένας εναλλακτικός τρόπος, με τύπους, για να δουλεύει με κλειστό βιβλίο είναι ο εξής:
Έστω βιβλίο 1, με δεδομένα = Book1
από A1 έως A10
Έστω βιβλίο 2, που θα «παίρνει» από το πρώτο = Book2
και τα θέλουμε έστω στο A1:A10 και πάλι.
Στο A1 του δεύτερου βιβλίου:
=[Book1.xlsx]Sheet1'!A1

Αυτό θα αλλάξει σε:
='C:\Users\χρήστης\Desktop\[Book1.xlsx]Sheet1'!A1
δηλαδή, θα δημιουργήσει ένα σύνδεσμο, με το path που είναι το βιβλίο.

Με το Book1 κλειστό, ανοίγοντας το Book2 η excel ρωτάει
αν θέλουμε να ανανεώσουμε τον σύνδεσμο ή τους συνδέσμους προς άλλα βιβλία.

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

Σημείωση:
1. Σε Office Ελληνική γλώσσα το "Sheet" θα εμφανίζεται "Φύλλο"
2. Αν το φύλλο έχει ονομαστεί φυσικά εμφανίζεται το όνομα του.
Απάντηση με παράθεση
  #3  
Παλιά 03-09-15, 22:29
Όνομα: Κωστής
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 02-09-2015
Μηνύματα: 4
Προεπιλογή

Ευχαριστώ πολύ Σπύρο!
Ο λόγος που επέλεξα την INDIRECT αντί για τη λύση που προτείνεις, είναι ότι το όνομα του αρχείου "source" είναι μεταβλητό. Σε κάποια φύλλα του βιβλίου 2 (ας πούμε worksheets1, 2, 3), θα είναι ως πηγή δεδομένων το βιβλίο 1 (αναφέρομαι στο παράδειγμά σου), στα επόμενα φύλλα 2,3,4 όμως, θα είναι ως πηγή δεδομένων πχ το βιβλίο 3, ενώ στα 4,5,6 θα είναι ως πηγή δεδομένων το βιβλίο 4.
Όλα τα φύλλα του βιβλίου 1, (worksheets 1 εως 6), είναι ακριβώς τα ίδια. Αλλάζουν μόνο οι τιμές τους ανάλογα με το αρχείο που χρησιμοποιείται ως "πηγή".

Στην περίπτωσή μου, πρέπει να φτιάξω 24 τέτοια sheets. Εάν χρησιμοποιήσω την indirect, μπορώ να αντιγάψω στο 1o sheet άλλες 23 φορές, και να έχω σε ένα ξεχωριστό sheet τα filenames και τα paths των αρχείων "πηγών", τα οποία θα χρησιμοποιεί η indirect.

Στην περίπτωση της απευθείας αναφοράς, θα πρέπει να κάνω find/replace το κοπιαρισμένο filename από το προηγούμενο sheet με το εκάστοτε filename που θέλω να χρησιμοποιήσω ως source.

Σωστά το λέω;

Σχετικά με τη vba, υπάρχει περίπτωση να δουλέψει η Indirect ή η απευθείας αναφορά που προτείνεις, χωρίς να χρειάζεται να ανοίξω τα source αρχεία;

Ευχαριστώ!

ΥΓ
[Ναι, έκανα λάθος. Δεν αναφερόμουν σε xlsx αλλά σε xlsm. Ενεργοποιημένα macros/vba.]
Απάντηση με παράθεση
  #4  
Παλιά 04-09-15, 01:11
Το 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
Προεπιλογή

Καλημέρα
Κωστή, κατ' αρχήν να κάνω ένα σχόλιο, σχετικά με το θέμα.
Στα τόσα χρόνια που ασχολούμαι και εξειδικεύομαι, με την εφαρμογή της Excel,
ποτέ μα ποτέ δεν χρειάστηκε να χρησιμοποιήσω
σε δικά μου τουλάχιστον projects τέτοιες μεθόδους.
Πάντα φρόντιζα να σχεδιάζω πρώτα αυτό που θέλω,
να δω και να υπολογίσω το βάθος του και να το δημιουργήσω σε ένα και μόνο βιβλίο.
Υπάρχουν όμως και περιπτώσεις, που μου έχουν ανατεθεί,
που θα μπορούσε να χρησιμοποιηθεί μια τέτοια μέθοδος, γιατί δεν γίνεται διαφορετικά.
Επειδή λοιπόν, η INDIRECT και κάποιες άλλες συναρτήσεις, είναι πολύ βαριές,
ειδικά αν έχουμε πολλά δεδομένα, τότε πάντα, η λύση είναι ο κώδικας.

Τώρα στο θέμα μας:
Έχεις λοιπόν ένα βιβλίο(Χ) το οποίο παίρνει δεδομένα, από διάφορα βιβλία πηγές.
Η κατάληξη, στα βιβλία αυτά δεν μας ενδιαφέρει. (.xls - .xlsx ή ότι άλλο)
Το βιβλίο που δέχεται, θα είναι απαραίτητα .xlsm ή .xlsb
Σχεδιάζεις, από που έρχεται και που πάει τι
και με κώδικα, χωρίς να ανοίγεις τα βιβλία πηγές, κάνεις τις ενημερώσεις σου.
Αυτό προϋποθέτει κάποια μελέτη.
Τι θα κάνω, πως θα το κάνω, γιατί, τι θα πάρω και από πού.
Απάντηση με παράθεση
  #5  
Παλιά 04-09-15, 08:58
Όνομα: Κωστής
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 02-09-2015
Μηνύματα: 4
Προεπιλογή

Καλημέρα, κι ευχαριστώ για την απάντηση.
Θα πάω στη λύση του κώδικα. Όντως είναι πολύ βαριά η indirect.
Και πολύ βαριά τα αρχεία των "πηγών".
Δυστυχώς δεν είναι δυνατόν να τα χωρέσω όλα σε ένα βιβλίο, λόγω όγκου και υπολογιστικής ισχύος που απαιτείται.

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

Ευχαριστώ και πάλι. Καλημέρα.
Απάντηση με παράθεση
  #6  
Παλιά 04-09-15, 09:25
Το 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
Προεπιλογή

Καλημέρα.
Για να διευκολύνω ( αν και δεν γνωρίζω τα αρχεία ) την κατάσταση, θα πρότεινα το εξής:
Κάνε έλεγχο στα βιβλία και αντικατέστησε αν είναι δυνατόν, συναρτήσεις όπως η Offset
για παράδειγμα και ακόμη κατάργησε, αν υπάρχουν μορφοποιήσεις υπό όρους μη ζωτικής σημασίας.
Μπορείς ακόμα και κάποιους υπολογισμούς, να τους αλλάξεις με κώδικα, αντί άλλης συνάρτησης.
Τα βιβλία θα «ελαφρύνουν» κατά πολύ...
Φρόντισε ακόμα (στον κώδικα), να σταματάς τα Events* και να τα επαναφέρεις και πάλι στο τέλος του, καθώς και την ανανέωση οθόνης*.

*Αν κι εφ' όσον, δεν τροφοδοτούν φόρμες για παράδειγμα, που θα πρέπει να πάρεις κάτι από εκεί μετά την ενημέρωση τους ...
Απάντηση με παράθεση
  #7  
Παλιά 04-09-15, 10:02
Όνομα: Κωστής
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 02-09-2015
Μηνύματα: 4
Προεπιλογή

Ευχαριστώ. Θα προσπαθήσω να μεταφέρω όλες τις συναρτήσεις στον κώδικα καταρχήν.

Conditional formatting δεν έχω στο συγκεκριμένο αρχείο. Απλή μορφοποίηση μόνο.

Ευχαριστώ για τα tips. Όντως το screenupdate και τα events είναι ωφέλιμο να σταματούν.
Απάντηση με παράθεση
Απάντηση στο θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Πρότυπα] Χρήση εξωτερικών αρχείων σε πρότυπο του excel. panda72 Excel - Ερωτήσεις / Απαντήσεις 7 14-04-14 18:39
[Excel07] Ενοποίηση αρχείων excel-αυτόματη ενημέρωση ΧΟΥ Excel - Ερωτήσεις / Απαντήσεις 5 17-02-13 23:46
[Γενικά] Αναζήτηση - Εκτέλεση - αρχείων στην Excel Tasos Excel samples - Χρήσιμα αρχεία & παραδείγματα 0 10-02-13 20:12
[VBA] Αναζήτηση - Εκτέλεση - Διαγραφή αρχείων στην Excel Tasos Excel samples - Χρήσιμα αρχεία & παραδείγματα 0 25-10-12 16:10
Αναζήτηση αρχείων με Excel (Εναλλακτική μέθοδος της 'FileSearch') Ms-Office-Development Team Excel samples - Χρήσιμα αρχεία & παραδείγματα 0 21-01-10 07:03


Η ώρα είναι 23:32.