![]() |
Διαίρεση εγγραφής 1 Συνημμένο(α) Καλημέρα, Εχω ένα θέμα λίγο περίεργο. Στο αρχείο που επισυνάπτω, έχω εγγραφές με στοιχεία τοίχων. Θελω πατώντας ένα κουμπί να με ρωτά ποιο τοίχο θέλω να χωρίσω στην μέση και σε ποιό σημείο. Κατόπιν θα πηγαίνει όλες τις εγγραφές κάτω απο την εγγραφη που επέλεξα μια θέση κάτω και θα προσθέτει την σειρά με όλα τα στοιχεία ίδια εκτός απο το πλάτος που θα το έχει χωρίσει όπως έχω επιλέξει. Παράλληλα θα πρέπει να πηγαίνει και να αλλάζει, στο sheet των παραθύρων, τον αριθμό των τοιχων στον οποίο ανήκει το κάθε κούφωμα. Μάλιστα αν είναι κάποιο παράθυρο στον τοιχο που σπάω θα πρέπει να βρίσκει απο την απόσταση, σε ποιο τοιχο θα ανήκει μετά το σπάσιμο!!! :)... Ξέρω οτι είναι πολύ δυσκολο γι αυτό μια λύση έστω να πλησιάζει σ αυτό που θέλω θα είναι πολύ χρήσιμη. Ευχαριστώ!!! :) |
Καλημέρα Φίλε Μπάμπη Πιθανόν το ζητούμενο να είναι δύσκολο .... Δυσκολότερο όμως είναι να κατανοήσουμε τον τρόπο δουλειάς του κάθε ανθρώπου που ζητάει κάτι. Επειδή δεν είμαστε αλουμινάδες είναι δύσκολο να μπορέσω τουλάχιστον εγώ να κατανοήσω τον τρόπο που δουλεύουν οι πίνακές σου και που είναι ο τοίχος που θέλεις να διαιρεθεί και με τι κριτήριο με αποτέλεσμα να μην μπορώ να δώσω απάντηση Γι' αυτό θα πρότεινα να κάνεις τον κόπο να ανεβάσεις πάλι το υπόδειγμά σου με κάποια πλαίσια μέσα σε αυτό που να εξηγεί πχ "1 εδώ θέλω αυτό..." "2 εδώ θέλω να διαιρεί τον τοίχο με κριτήριο...." "3 εδώ να γίνει εισαγωγή της γραμμής...." κλπ όσο γίνεται πιο αναλυτικά για να γίνει κατανοητό το ζητούμενο |
1 Συνημμένο(α) Σπύρο έχεις δίκιο!! :) Λοιπον ανεβάζω το παράδειγμα και περιμένω με αγωνία την απάντηση... |
1 Συνημμένο(α) Καλημέρα Θα πάμε την λύση τμηματικά για αποφυγή λαθών Μέχρι τώρα Έγιναν ονομασίες (βλέπε Name Manager) Στο Α4 μπαίνει =IF(F4<>"";ROW()-3;"") και τραβάμε κάτω Οι τοίχοι αριθμούνται αυτόματα όταν θα μπει το πλάτος τους Ο νέος τοίχος που προκύπτει από την διαίρεση του παλιού θα ονομαστεί 9 και οι υπόλοιποι θα είναι +1 Α4 έως Α28 Conditional Formatting και αυξάνεται η περιοχή όσο και αν προστίθενται ανάμεσα τοίχοι Στα κελιά G1, H1 επιλογές νέου τοίχου G1, αριθμός H1 μέτρα Εδώ αν επιλέξουμε εκ παραδρομής μέτρα περισσότερα από το μήκος του υπάρχοντος τοίχου υπάρχει έλεγχος που μας προειδοποιεί να το αλλάξουμε Έγιναν με VBA 1. Θέλουμε να σπάσουμε τον τοίχο 8 στα 2, δίνοντας το μήκος του διαιρεμένου νέου 8 μετρούμενο από την αφετηρία αριστερά πχ. 2,40m 2. Μετακινούμε τις γραμμές 9+ μια σειρά κάτω 3. Αλλάζει το μήκος σε 2,4 όπως ορίσαμε 4. Το υπόλοιπο μήκος είναι 3,10 5. Η συνέχεια του τοίχου είναι βέβαιη αφού προκύπτει από διαίρεση αρα παει σίγουρα 1 6. Εδώ μπαίνει η τιμή του αρχικού τοίχου 8 αρα τίποτα Οι μετρήσεις σε κελιά και στήλες στον κώδικα έγιναν με βάση τον αριστερό πίνακα Ο δεξιά δεν λήφθηκε υπ' όψιν καθόλου (πιστεύω ότι τον έβαλες για το παράδειγμα σωστά?) Με βάση τις αναλυτικές οδηγίες μέσα στον κώδικα Και με μπούσουλα τις τελευταίες 4 σειρές του κώδικα Μπορείς να ολοκληρώσεις τα 4 τελευταία στάδια υπολογισμών του κώδικα για το φύλλο ΤΟΙΧΟΙ ? |
Καλημέρα, Καταρχάς ευχαριστώ πάρα πολύ για την απάντηση!!!! :respect: Τους δεξια πίνακες τους είχα μόνο για παράδειγμα ναι. Ενα θέμα είναι οτι τα κελιά που δεν αλλάζουν θα πρέπει να αντιγράφονται οι τιμές του αρχικού τοίχου, αλλα δεν το διευκρίνισα εγώ. Το δεύτερο θέμα είναι το 2ο φύλλο τα ΚΟΥΦΩΜΑΤΑ. Εδώ δεν είδα να γίνεται κάτι γιατι προφανώς δεν είπα να κοιτάξεις και σ αυτό το φύλλο!!!! Αν το κοιτάξεις καθε κούφωμα ανήκει σε κάποιο τοίχο. Επομένως αν διαιρεθεί ο τοίχος αυτό θα πρέπει να γίνει και η κατανομή των παραθύρων στα νέα δεδομένα. Εξηγώ πως μπορεί να γινει αυτο στο αρχείο που ανέβασα. Σε ευχαριστώ εκ των προτέρων!!! |
VBA δεν ξέρω αλλά το προσπαθήσω! :) |
Μπάμπη όπως σου είπα και πιο 'πάνω την λύση θα την πάμε σταδιακά για να μην κάνουμε κάποιο λάθος και τα αλλάζουμε όλα από την αρχή. Το είδα το φύλλο ΚΟΥΦΩΜΑΤΑ και όλα όσα πρέπει να γίνουν αλλά ... η λύση μέχρι στιγμής είναι μέχρι το σημείο 6 των "σχολείων" σου όπως σου εξηγώ και πιο πάνω Δεν έχει ολοκληρωθεί το θέμα "ΤΟΙΧΟΙ" και δεν έχουμε ακουμπήσει τίποτα στο φύλλο ΚΟΥΦΩΜΑΤΑ Μέχρι εδώ που φτάσαμε όλα καλά ή υπάρχει κάτι που πρέπει να αλλάξει ? |
Μπορούμε αντι να βάζει κενή σειρά απλά να κατεβάζει τις εγραφές προς τα κάτω? Ο λόγος που το θέλω αυτό είναι επειδη δεξια απο τον πίνακα έχω διάφορους τύπους που κάνουν υπολογισμούς. Ο λόγος που τους έσβησα είναι για να μην γίνεται χαμός και για να καταλαβαίνω τι γίνεται. |
επίσης μπορούμε να τσεκάρουμε αν το μήκος τομής πέφτει πάνω σε παράθυρο? |
Και κάτι που μόλις είδα: Για τους τοιχους 1 και 2 δεν λειτουργεί |
Ναι Ok μπορεί να γίνει αλλά έχω την εξής απορία... Οι τύποι αυτοί δεν θα επηρεαστούν αν μπει μια σειρά κελιών στον "πίνακά" σου ? Έχει προβλεφθεί κάτι τέτοιο στην κατασκευή τους αν περιέχουν πχ Row(), Column(), Index(), Match() κλπ Είναι δυναμικές οι περιοχές στις οποίες αναφέρονται ? Και ακόμα.... γιατί βρε παιδιά αφού έχετε 2007+ (όσοι έχετε) δεν χρησιμοποιείτε κανονικούς πίνακες να είναι όλα απλούστερα και καλύτερα ? Και γιατί χρησιμοποιείτε συγχωνευμένα κελιά ? Ξέρω ότι μερικές φορές μπορεί να επαναλαμβάνω τα ίδια πράγματα αλλά δεν είναι απλό να επέμβει κανείς σε κάποιο φύλλο που ήδη χρησιμοποιείται για μια δουλειά χωρίς να αλλάξουν "πράγματα" εκ βάθρων μερικές φορές Αυτός είναι και ο λόγος που σου είπα να το πάμε τμηματικά Αν δεν έχω εικόνα αυτών των τύπων τι κάνουν και που αναφέρονται μπορεί όσα κάναμε μέχρι τώρα να είναι λάθος ή οι τύποι πλέον μετά την αλλαγή γραμμής να αποδίδουν λάθος.... Ελπίζω να καταλαβαίνεις τι περιγράφω και που μπορεί να οδηγήσει αυτό αν υπάρχουν ελλιπείς πληροφορίες |
κατ αρχήν άλλαξε το c με c+3 στο δεύτερο if If Cells(c + 3, 6).Value < Range("rngWallNewMeasure").Value Then για να λειτουργεί σε όλους τους τοίχους (γίνονται και λάθη) |
1 Συνημμένο(α) Εφτιαξα το excel οπως είναι και πέρασα τις αλλαγές σου. Οπως βλέπεις το πρόβλημα με την κενή σειρά είναι στον δεξιά πίνακα. Αν μεταφερθούν οι εγγραφές μια σειρά κάτω τότε θεωρώ το πρόβλημα λύνεται |
Όπως είναι τώρα το φύλλο έχουμε 2 "πίνακες" Ο αριστερά που επεξεργαζόμαστε και ο δεξιά που "παίρνει" από αυτόν κάποια στοιχεία και κάνει και άλλους υπολογισμούς 1. Αν ο α/α στον πράσινο πίνακα δεν πρέπει είναι τύπος και είναι απλή αρίθμηση όπως την έχεις εσύ τότε πρέπει να το βγάλω από τον κώδικα αλλά αν γίνει αυτό και 2. Αν δεν εισαχθεί ολόκληρη γραμμή όπως είναι τώρα ο κώδικας αλλά εισάγουμε μόνο κελιά στην περιοχή στηλών A:U του πράσινου πίνακα δεν θα επηρεαστούν τα αποτελέσματα του λευκού πίνακα αφού "παίρνει" από τον πράσινο με συνέπεια να δίνει λάθος αποτελέσματα? |
Ο τρόπος που μπορεί να λειτουργήσει χειροκίνητα είναι αν επιλέξεις την περιοχή πχ B12:U18 και κάνεις copy paste μια σειρά κάτω... Μετά απλά κανεις απαλοιφή τιμών στο B12:U12. Δεν ξέρω πόσο μπακαλίστικο είναι αυτό αλλα λειτουργεί γιατι ο πινακας δίπλα δεν "χαλάει". Ετσι μετά "απλά" τροφοδοτούμε με τιμές την σειρά Β12... Τι λες? |
Η καταγραφή της μακροεντολής είναι: Range("B12:U18").Select Selection.Copy Range("B13").Select ActiveSheet.Paste Range("B12:U12").Select Selection.ClearContents |
1 Συνημμένο(α) Ναι όλα αυτά όμως πρέπει να αλλάξουν γιατί η καταγραφή είναι σε συγκεκριμένη Range ενώ πρέπει να δουλεύει παντού (πρέπει να γίνει μεταβλητή) Παρατήρησα ότι στον δεξιά πίνακα όλοι οι τύποι είναι ίδιοι και μόνο ένας διαφέρει στην 1 σειρά αυτός με την indirect Τον έχω αντικαταστήσει με index & count που κάνει την ίδια δουλειά και έχω κάνει το αποτέλεσμα με link κελιών Αν παντρευτεί αυτό με τον από κάτω που διαφέρει και γίνουν όλοι οι τύπο ίδιοι τότε λύνεται πολύ απλά το θέμα των τύπων του πίνακα χωρίς Copy Paste και Clear κλπ Σου ανεβάζω ένα δείγμα να το δεις μήπως μιας και γνωρίζεις τον τρόπο λειτουργίας έχεις κάποια ιδέα να υπάρχει κάτι που να τα καλύπτει όλα (όλοι οι τύποι ίδιοι) Προς το παρών το σύστημα δεν δουλεύει για τον τοίχο 1 |
Καλημέρα, εννοείται οτι αυτό που έγραψα είναι για την συγκεκριμένη γραμμή και πρέπει να γίνει μεταβλητή. Το έγραψα για δεις ακριβως τι λεω. Με το copy paste νομίζω οτι είναι η πιο καλή λύση γιατι δεν μας αλλάζει τίποτα. Η λύση που προτείνεις είναι πολύ καλή αλλά με 3 μειονεκτήματα. 1ο δεν μπορω να σκεφτώ τρόπο να είναι όλοι οι τύποι ίδιοι 2ο σε περίπτωση που θελω κάποιο άλλο αρχείο να τραβάει δεδομένα από τον πίνακα θα έχει πρόβλημα 3ο Προσθέτει μια σειρά στο τέλος (καλά αυτό δεν είναι και τόσο θέμα) Θα προτιμούσα (δεν ξέρω πόσο δύσκολο είναι) να εφαρμόσουμε την λύση copy paste γιατι νομίζω οτι είναι γενική λύση που θα μας λύσει τα χέρια σε πολύ περισσότερες περιπτώσεις και όχι μονο στην δική μου. Βεβαίως οποιαδήποτε λύση αποδεκτή!!! :) Επίσης το copy paste μας βάζει τι τιμές του αρχικού τοίχου και στον νέο, οπότε άλλαζουμε ότι χρειάζεται και αφήνουμε τα άλλα. Σε ευχαριστώ πολύ που έχεις ασχοληθεί τόσο!!!:045: |
Δεν είναι δύσκολο να γίνει copy paste Αρκεί να δημιουργηθεί μια δυναμική περιοχή που να αντιγράφεται από την σειρά επιλογής +1 μέχρι την last row (...xlUp...) αλλά... η μέθοδος copy paste δεν είναι και η πλέον ενδεδειγμένη για κώδικα για διάφορους λόγους άσε λίγο να το δω το θέμα και τα λέμε Βασικό μου θέμα που θα ήθελα απάντηση είναι το εξής Στα παραδείγματά σου ο νέος τοίχος που θα δημιουργηθεί δεν έχει όνομα επειδή χρησιμοποιείται α/α χωρίς τύπο 1. Τί όνομα έχει ο νέος τοίχος που προκύπτει από την διαίρεση του 8 πχ 9, 8α ?..... 2. Μας ενοχλεί σε κάτι η μέθοδος του τύπου στον α/α ? ώστε να ονομάζεται αυτόματα ο νέος τοίχος πχ ο 8 να διαιρεθεί σε 8 και 9 και οι υπόλοιποι 9+1......? 3.Σε περίπτωση διαίρεσης του τοίχου 1 ο δεξιά πίνακας στην 2η γραμμή του θα έχει τύπους όπως στην 1η σειρά δηλ. με indirect ή όπως όλες οι υπόλοιπες σειρές (όλα ίδια) |
1) Το όνομα του 2ου κοματιου θα είναι 9 και των άλλων 10+ 2) >> 3) Αν διαιρεθεί ο 1 τοτέ ο νέος 2 θα έχει τύπους όπως ο 3,4 κτλ.. Ο 1 θα διατηρήσει τους τύπους του. Δεν ξέρω Vba αλλα η περιοχη στο excel οριζεται σχετικά εύκολα. |
Ok άσε να το δω λίγο και θα έχεις νέα ... |
1 Συνημμένο(α) Όλοι οι υπολογισμοί για το φύλλο ΤΟΙΧΟΙ έχουν ολοκληρωθεί Πριν πάμε στο φύλλο ΚΟΥΦΩΜΑΤΑ κάνε έλεγχο για τυχόν λάθη ή παραλήψεις και πες μου να τα διορθώσουμε Ο αριστερός πράσινος πίνακας έχει "κατέβει" μία γραμμή και οι τύποι του δεξιά λειτουργούν με εισαγωγή ολόκληρης γραμμής Σε αναίρεση του νέου τοίχου (αν διαγράψεις την γραμμή που έχει εισαχθεί) οι τύποι χαλάνε αλλά επιδιορθώνονται με το μπλε κουμπί "κλειδί" Ελπίζω κάτι να πετύχαμε .....θα δούμε.... |
Καλησπέρα, Εχει κάποια θέματα: 1) Οταν σπας ένα τοίχο με το κελί της συνέχειας κενό, τότε το αλλάζει σε 1 ενω θα έπρεπε τον 1ο τοιχο να βάλει 1 και στο άλλο κενό. 2) Η εισαγωγή γραμμής χαλάει την μορφοποίηση υπο όρους και ενω θα έπρεπε να γίνεται πορτοκαλί το ένα κελι (αρ. ύψος) κάτω απο ττην σειρά με κενή συνέχεια γίνονται 2! 3) στις σειρες κάτω απο την εισαγωγή τα αριστερά ύψη δεν τα υπολογιζει σωστά... Δεν είδα κατι άλλο. Θα επιμείνω οτι copypaste θα τα έλυνε απλά τα θέματα αυτά... Βέβαια δεν ξέρω κάτι.. απλά υποθέτω... Δεν κάνω κριτική αλλά γιατί δεν το κάνουμε με copypaste? Υπάρχει άλλο θεμα που δεν ξέρω? Σορρυ αν σε πρήζω!! :) |
1 Συνημμένο(α) Καλημέρα Το 1 λύθηκε εύκολα Το 2 δεν βλέπω να αλλάζουν 2 αλλάζει 1 (ξανατσεκάρισε την μορφοποίηση με βάση τα νέα δεδομένα) Το 3 σε ποια στήλη αναφέρεσαι |
1 Συνημμένο(α) Καλημέρα! Για το 2 δες το αρχείο που σου βάζω Το 3 οκ! :) |
Καλημέρα Προφανώς έχεις δώσει στην στήλη D αρχικό χρώμα κίτρινο και αλλάζει αν ισχύουν οι συνθήκες της μορφοποίησης σε γκρι και κόκκινο Βάλε αρχικό χρώμα στήλης D λευκό ή χωρίς χρώμα και να ξαναδείς όλες τις μορφοποιήσεις σε νέα βάση (απέφυγε και την indirect) αν είναι δυνατόν Όσο για το κίτρινο να μπαίνει όταν το κελί της χ row στην D έχει το αντίστοιχο offset κελί στην row - 1 στην στήλη G κενό (απλό).... Πρόσεξε το σύμβολο $ στον τύπο που θα βάλεις στην μορφοποίηση Έτσι λοιπόν το φύλλο ΤΟΙΧΟΙ είναι πλήρες Μπράβο μας....! |
Μπράβο σου!! Οταν πόσταρα το πρόβλημα δεν θεωρούσα οτι θα κάτσεις να το κάνεις μόνο σου! Κάποιες κατευθύνσεις περίμενα... Σε ευχαριστώ πολύ... Ασε με να μελετήσω τι έκανες και να το παιδέψω μόνος μου το υπόλοιπο! :) Και πάλι ευχαριστώ!!! |
Καλεσπέρα, ξέρω πως είπα οτι θα το προσπαθήσω, αλλά τελικά όπως φαίνεται δεν το έχω και πολύ! :) Καμια ιδέα για το πώς θα αλλάξουν στο φύλλο των κουφωμάτων οι αριθμοί των τοίχων στους οποίους ανήκει το κάθε κούφωμα?????? Ευχαριστώ |
Καλησπέρα Πάμε στο φύλλο Κουφώματα Υπάρχουν 2 στήλες με α/α η Α και η Β Κατήργησε τα περιεχόμενα της Α Βάλε Α24 κελί το γραμμα V για κεφαλίδα Κάνε επικύρωση στην περιοχή Α25:Α74 με λίστα τα 2 κελιά Α23 = κενό και Α24 = V Πάμε στην Β στήλη Βάλε Β25 =Τοιχοι!A5 και τράβηξε κάτω Έτσι όλοι οι τοίχοι με τους νέους αριθμούς μετακινήθηκαν με βάση το α/α του φύλου τοίχοι Έστω ότι θέλουμε κουφώματα σε τοίχους 2, 3, 5, 8, 9 Πάμε στην στήλη Α και βάζουμε το V δίπλα στον α/α του κάθε τοίχου από τους 5 Ενημέρωσε τους τύπους σου με βάση το V να αποδίδουν "κάτι" όπου υπάρχει ή "κενό" όπου δεν υπάρχει |
Καλησπέρα, Δεν μπορει να γίνει με τον τρόπο που περιγράφεις γιατι σε 1 τοιχο μπορούμε να έχουμε πολλά παράθυρα! Αλλα και να το κάναμε αυτό, τι θα κερδίζαμε? |
Προσπάθησα να δώσω λύση με βάση το παράδειγμα σου και τα "σχόλια" στο βιβλίο The Wall Υπάρχει κάτι άλλο που πρέπει να προσεχθεί ? Λέει κάπου εκεί για πολλαπλά παράθυρα σε τοίχο και δεν το πρόσεξα ? Η μέθοδος λειτουργεί πολύ καλά με τις αλλαγές τοίχων... Σου έχει φέρει όλους τους τοίχους "περασμένους" στα κουφώματα και με το V επιλέγεις που θέλεις να γίνει πχ άνοιγμα |
Καλημέρα, η αλήθεια είναι οτι δεν ειπα πουθενα οτι ενας τοιχος μπορει να έχει πάνω απο ένα παράθυρα αλλά: 1) Αν μπορούσε να έχει μόνο ένα δεν υπήρχε λόγος να τα έχω σε άλλο πίνακα. 2) Στον πινακα κουφώματα δεν μας εμποδίζει κανείς να έχουμε σε 2 παράθυρα ίδιο τοίχο 3) και τέλος είναι και λογικό ένας τοίχος να μπορεί να έχει πολλά παράθυρα! :) Τελός πάντων ακόμα και έτσι δεν λύνεται το προβλημα σε ποιον τοίχο θα πάει το κάθε παράθυρο που ανήκει στον μεγάλο τοίχο που διαιρείται... Εγω σκέφτηκα μια λύση αλλά επειδή δεν ξέρω VBA δεν μπορω να την γράψω σωστά... θα είναι ένα LOOP το οποίο θα εξετάζει όλες τις εγγραφές στα κουφώματα: for i = 1 to 50 if worksheets("Κουφώματα").Cells(i+23, 2) > worksheets("Τοίχοι").Cells(2, 7) then worksheets("Κουφώματα").Cells(i+23, 2)=worksheets("Κουφώματα").Cells(i+23, 2)+1 if worksheets("Κουφώματα").Cells(i+23, 2) = worksheets("Τοίχοι").Cells(2, 7) then if απόσταση απο αριστερά >μηκους διαίρεσης του τοίχου ή απόσταση απο δεξια<μηκους του 2ου τοίχου then worksheets("Κουφώματα").Cells(i+23, 2)=worksheets("Κουφώματα").Cells(i+23, 2)+1 κάπως έτσι νομίζω μπορεί να λυθεί... απλά αν μπορεί να μεβοηθήσεις να γράψω τον κώδικα που περιγράφω. Ευχαριστώ |
Μπάμπη σαφώς και αυτά που λες στο 1 2 3 είναι σωστά...! Ακόμα δεν έχει ψηφιστεί νόμος που να απαγορεύει 2 παράθυρα σε έναν τοίχο :) Το θέμα να φτιάξουμε έναν κώδικα μπορεί να είναι από απλό έως σύνθετο αλλά... για να γίνει αυτό πρέπει να κατανοήσω (όπως σου είπα και στο ξεκίνημα) την δουλειά σου Στο βιβλίο που έχει τις διευκρινήσεις σου (Wall) έτσι όπως είναι στημένο το φύλλο κουφώματα μου δίνει την εξής εντύπωση. <<Αφού τελειώσουμε με τους τοίχους, πάμε στα κουφώματα επιλέγουμε ποιοι τοίχοι θα έχουν ανοίγματα από όλους τους τοίχους και τους "περνάμε" εκεί>> Εκεί είδα ότι έχεις επιλέξει από τους τοίχους τους 2 3 5 8 9 για παράδειγμα και σε αυτούς κάνεις υπολογισμούς τους οποίους υπολογισμούς δεν γνωρίζω καν σε τι αναφέρονται τα αποτελέσματά τους αυτό το ξέρεις μόνο εσύ... Εδώ μπαίνει η μέθοδος που σου είπα πιο πάνω όπου επιλέξεις κατ' αρχήν ποιοι τοίχοι θα έχουν άνοιγμα ...το πόσα έρχεται μετά Πιστεύω να καταλαβαίνεις τι ακριβώς εννοώ και να με βοηθήσεις για να σε βοηθήσω |
Καλημέρα, Καταρχάς σε ευχαριστώ για την βοήθεια σου! Την εκτιμώ. Αν κατάλαβα σωστά την μέθοδό σου δεν μπορούμε να έχουμε 2 παράθυρα σε ένα τοίχο... Θα ήθελα να μου πεις αν ξέρεις γιατι δεν λειτουργεί το παρακάτω... For i = 1 To 50 If Worksheets("Κουφώματα").Cells(i + 23, 2).Value > Worksheets("Τοίχοι").Cells(2, 7).Value Then Worksheets("Κουφώματα").Cells(i + 23, 2).Value = Worksheets("Κουφώματα").Cells(i + 23, 2).Value + 1 End If If Worksheets("Κουφώματα").Cells(i + 23, 2).Value = Worksheets("Τοίχοι").Cells(2, 7).Value Then Worksheets("Κουφώματα").Cells(i + 23, 2).Value = "edw" End If Next i όπως το σκέφτομαι θα εξετάζει αρχικά σε ποιό τοιχο ανήκει το κάθε κούφωμα και αν ανήκει σε τοίχο μετα τον τοίχο που διαιρέσαμε θα δίνει ένα νούμερο μεγαλύτερο, ενώ αν είναι το ίδιο θα δίνει τιμή εδώ... Τι λάθος κάνω??? :oeo: |
Καλησπέρα Ο κώδικας δεν δουλεύει με την μορφή αυτή για πολλούς και διάφορους λόγους Θα πρέπει να γίνει ως εξής (και το γράφω περιφραστικά για να μου βάλεις στα κενά ... τις περιοχές και τα κελιά που πρέπει) Κάπως έτσι [Για κάθε κελί της περιοχής τάδε......που είναι πχ > από το κελί ......τάδε Τότε πήγαινε στην περιοχή ......τάδε και βάλε σε κάθε κελί της που πληρεί την ιδιότητα (κριτήριο) πχ την λέξη "edw" ] και βέβαια όλο το κόλπο είναι να αποσαφηνιστεί τι εννοούμε ως κούφωμα μέσα στο φύλλο Στην περιγραφή σου <<όπως το σκέφτομαι θα εξετάζει αρχικά σε ποιο τοίχο ανήκει το κάθε *κούφωμα και αν ανήκει σε τοίχο μετά τον τοίχο που διαιρέσαμε θα δίνει ένα νούμερο μεγαλύτερο, ενώ αν είναι το ίδιο θα δίνει τιμή εδώ...>> *που βρίσκεται αυτό το κούφωμα μέσα στο φύλλο ποιο είναι (είναι κελί, σειρά) πως το περιγράφεις ; |
| Η ώρα είναι 15:48. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.