ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [VBA] αυτόματη αντιγραφή περιεχομένου κελιών

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

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 14-07-16, 18:46
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Question αυτόματη αντιγραφή περιεχομένου κελιών

Καλησπέρα σας,

Έχω μια ερώτηση.

Έχω ένα φύλλο ονόματι Active Maschines όπου έχω βάλει μορφοποίηση υπό όρους, 4 φανάρια. Τα νούμερα που βάζω αντιστοιχούν στις εβδομάδες του χρόνου. Έχω 50 διαφορετικές μηχανές. Τα φανάρια επίσης είναι ένα οπτικό βοήθημα να βλέπω ποίες είναι χρησιμοποιημένες πιο πρόσφατα. Κάθε κελί από το A1 μέχρι το A50 αντιστοιχεί σε διαφορετική μηχανή, Στο κανονικό το αρχείο έχω και πολλά στοιχεία από δίπλα για κάθε μηχανή.

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


Αυτό που θέλω να γίνεται είναι αυτόματα κάθε φορά που γράφω τον αριθμό εβδομάδας στα κελιά από Α1 - Α50 να αντιγράφεται το νούμερο μαζί με το φανάρι στο κελί με έντονο περίγραμμα στο φύλλο Active on Map σε κάθε μηχανή.

Οι θέσεις των μηχανών δεν αλλάζουν.

Εάν υπάρχει κάποιο παράδειγμα μακροεντολών να γίνει στο αρχείο Test1 που επισυνάπτω θα το προσαρμόσω μετά εγώ στο δικό μου αρχείο.

Ας δοκιμάσουμε στο αρχείο που επισυνάπτω για τις πρώτες 11 μηχανές.

Ελπίζω να έχω γίνει κατανοητός.

Ευχαριστώ!
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm Test 1.xlsm (11,8 KB, 27 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 17-07-16, 22:32
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Προεπιλογή

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

Worksheets("Active Maschines").Range("A1").Copy _
destination:=Worksheets("Active On Map").Range("C4")

Αντιγράφει τον σωστό αριθμό αλλά από τα φανάρια αντιγράφει μόνο το πρώτο το οποίο στην μορφοποίηση υπό όρους είναι το πράσινο. Περίεργο....

Ξέρετε για ποιόν λόγο γίνεται αυτό?

Επίσης ακόμα και δούλευε και να αντέγραφε και το σωστό φανάρι θα χρειαζόταν μια επαναληπτική μέθοδο (Loop) για να μην γράφω τον ίδιο κώδικα για 50 φορές για κάθε κελί ξεχωριστά. Το δύσκολο πάλι εδώ είναι ότι στην φόρμα Active On Map οι μηχανές είναι διάσπαρτες με βάσει την θέση τους στον χώρο και όχι η μία κάτω από την άλλη.
Απάντηση με παράθεση
  #3  
Παλιά 18-07-16, 09:18
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Καλημέρα

Επειδή, οι μηχανές στο φύλλο Active on Map είναι διάσπαρτες, είναι απαραίτητο να δώσεις σε κάθε μηχανή έναν κωδικό (ταυτότητα) ίδιο και στα δύο φύλλα.

Το παράδειγμα που ανέβασες είναι πολύ πρόχειρο (στους κωδικούς Α1, Α2, κλπ το A άλλοτε είναι ελληνικό και άλλοτε αγγλικό!).

Δες μια πρόταση στο συνημμένο.

Φιλικά/Γιώργος
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm CopyFormat2.xlsm (26,4 KB, 43 εμφανίσεις)
Απάντηση με παράθεση
  #4  
Παλιά 19-07-16, 16:43
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Προεπιλογή

Καλησπέρα

Ευχαριστώ πολύ για την πρόταση είναι πολύτιμη. Έχω προσαρμόσει τον κώδικα στο δικό μου αρχείο και δουλεύει.
Τι θα έπρεπε να αλλάξω έτσι ώστε να μην ανανεώνει (αντιγράφει) κάθε φορά που περνάω μια τιμή στο κελί στην φόρμα Active Maschines αλλά να γίνεται όταν τελειώσω όλες τις εισαγωγές και πατήσω πάνω στην φόρμα Active On Map?

Ευχαριστώ!
Απάντηση με παράθεση
  #5  
Παλιά 19-07-16, 18:09
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Για να μη γίνεται ενεργό το φύλλο [Active On Map], κάθε φορά που αλλάζει τιμή η εβδομάδα στο φύλλο [Active MasChines], αμέσως μετά τη γραμμή κώδικα:

ExitSub:

Πρόσθεσε τη γραμμή:

Sheet1.Activate
Απάντηση με παράθεση
  #6  
Παλιά 20-07-16, 14:51
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Προεπιλογή

Καλησπέρα.

Ευχαριστώ πολύ. Έβαλα την γραμμή κώδικα και δουλεύει άψογα.

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

Πως μπορώ να βλέπω πόσες από το σύνολο του κάθε είδος μηχανών δουλεύουν γενικά σε όλες τις εβδομάδες? Πχ οι μηχανές m1,m5,m11,m12m18,m23,m28,m34,m39 ανήκουν σε μία ομάδα στο φύλο Active Machines Σκέφτηκα να χρησιμοποιήσω την συνάρτηση Countif και να βάλω μέσα κριτήριο να ψάχνει για κάθε ομάδα μηχανών στα ανάλογα κελιά που βάζω τις εβδομάδες αν η τιμή είναι >0 αλλά το πρόβλημα είναι ότι η συνάρτηση δουλεύει μόνο όταν τα κελιά που ψάχνω είναι σε σειρά. Όταν είναι διάσπαρτα νομίζω πρέπει να χρησιμοποιηθεί ένας συνδυασμός Sum Vcount και Indirect? Μέχρι στιγμής είτε δεν μου βγάζει αποτέλεσμα είτε λέει ότι συνάρτηση έχει κάποιο πρόβλημα.

Μήπως είναι καλύτερο να γίνει με κώδικα VBA?

Κάποια ιδέα πάνω σε αυτό?

Ευχαριστώ!
Απάντηση με παράθεση
  #7  
Παλιά 20-07-16, 16:20
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.737
Προεπιλογή

Αντώνη, δες μια πρόταση στο συνημμένο
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm CopyFormat4.xlsm (47,3 KB, 30 εμφανίσεις)
Απάντηση με παράθεση
  #8  
Παλιά 25-07-16, 20:44
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Προεπιλογή

Ευχαριστώ για τις προτάσεις.

Προσπαθώ να το κάνω και στο δικό μου αρχείο άλλα δεν δουλεύει. Μήπως μπορείς να μου πεις γιατί? Το έχω επισυνάψει.

Επίσης για να μην επιλέγω κάθε φορά από το drop down menu το Group θα μπορούσε μήπως και να γίνει αλλιώς και να βγάζει σε έναν πίνακα (όπως έχω κάνει στο αρχείο) συνέχεια πόσες μηχανές είναι ενεργές κάθε εβδομάδα?

Ευχαριστώ!
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm Test1.xlsm (15,1 KB, 7 εμφανίσεις)
Απάντηση με παράθεση
  #9  
Παλιά 26-07-16, 05:20
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Προεπιλογή

Ειχα ένα λάθος στον αριθμό των μηχανών τύπου 22Ε και το ξανα ανέβασα το αρχείο.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm Test1.xlsm (15,4 KB, 12 εμφανίσεις)
Απάντηση με παράθεση
  #10  
Παλιά 26-07-16, 06:15
Όνομα: Αντώνης
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 24-09-2015
Μηνύματα: 15
Προεπιλογή

Για να μην χρησιμοποιώ το drop down menu με τα Group σκέφτηκα να βάλω σε κάθε κελί στο πινακάκι που έκανα τον ίδιο ερώτημα μόνο που μέσα στο INDIRECT() να έχει απευθείας τα ονόματα των ομάδων (Names Manager). πχ για να βγάζει τις μηχανές τύπου 10Ε, INDIRECT(M10E)...

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


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Γενικά] Αντιγραφή κελιών. steliosgr Excel - Ερωτήσεις / Απαντήσεις 1 17-03-16 20:01
[Excel07] Συνένωση περιεχομένου κελιών πολλών φύλλων σε νέο φύλλο petroskodos Excel - Ερωτήσεις / Απαντήσεις 7 14-01-14 18:31
Αντιγραφή περιεχομενου από πεδίο artchrist73 Access - Ερωτήσεις / Απαντήσεις 2 01-05-11 21:21
[VBA] Κουμπί για καθαρισμό του περιεχομένου περιοχής κελιών φωτης Excel - Ερωτήσεις / Απαντήσεις 4 07-02-11 21:01
[Access - VBA] Αντιγραφή περιεχομένου κελιού σε άλλο κελί Meteora Visual Basic for Applications (VBA) 4 09-09-10 15:31


Η ώρα είναι 22:54.