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

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

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 12-08-11, 15:54
Όνομα: ΣΤΑΥΡΟΣ
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 24-05-2011
Μηνύματα: 28
Προεπιλογή Αυτόματη ενημέρωση πίνακα

Γεια σας παιδια , εχω και εγω ενα προβλημα
Σας επισυναπτω ενα αρχειο στο οποιο στο 1ο φυλλο εχω ημερομηνιες και σπιτια προς καθαρισμα , στο 2 φυλλο θελω να δημιουργειται ενας πινακα αντιστοιχος με αυτον που απεικονιζεται και να οποιο σπιτι χρειαζεται καθαρισμα να γραφει Κ
Δεν ξερω εαν μπορειται να βοηθησετε .
Σας ευχαριστω προκαταβολικα
Συνημμένα Αρχεία
Τύπος Αρχείου: xls ΚΑΘΑΡΙΣΜΑΤΑ.xls (458,5 KB, 42 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη gr8styl : 02-09-11 στις 00:20. Αιτία: add prefix
Απάντηση με παράθεση
  #2  
Παλιά 12-08-11, 19:08
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.249
Προεπιλογή

Καλησπέρα σε όλους!
Σταύρο καλωσόρισες στο φόρουμ!
Μετακίνησα το μήνυμα σου σε νέο θέμα.
Η δημιουργία ενός τέτοιου πίνακα προϋποθέτει γνώσεις προχωρημένου χρήστη στην Excel.

Σου επισυνάπτω αρχικά ένα παράδειγμα από όπου:


  • Θα συμπληρώνεις τα κτίρια στη Λίστα Κτιρίων στο Φύλλο1 για μία και μοναδική φορά.
  • Στο φύλλο2 θα βλέπεις τα αποτελέσματα.
  • Αν προσθέσεις νέο κτίριο, αφού το συμπληρώσεις στη Λίστα Κτιρίων, θα πρέπει στο
    φύλλο2 να τραβήξεις την τελευταία στήλη προς τα δεξιά για να σου εμφανιστεί το νέο κτίριο με τις υπηρεσίες του.
Μελέτησε το και αν χρειαστείς κάτι γράψε στο φόρουμ.


Φιλικά


Τάσος


Συνημμένα Αρχεία
Τύπος Αρχείου: xls ΚΑΘΑΡΙΣΜΑΤΑ.xls (77,0 KB, 72 εμφανίσεις)
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
  #3  
Παλιά 13-08-11, 08:56
Όνομα: ΣΤΑΥΡΟΣ
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 24-05-2011
Μηνύματα: 28
Προεπιλογή

Τασο , σε ευχαριστω πολυ ειναι οτι χρειαζομουνα αλλα δεν μπορουσα να το υλοποιησω.
Δεν ξερω εαν κανω καταχρηση αλλα οπως καταλαβαινεις κανω μια διαχειριση καθαριστριας .
Εαν καποιες μερες εχει 2 καθαρισματα δεν προλαβαινει στο ωραριο της τοτε θα μπορουσε το προγραμμα να την βαζει την επομενη μερα εαν ειναι ελευθερη και βεβαια εαν δεν εχει γινει check in
Απάντηση με παράθεση
  #4  
Παλιά 13-08-11, 09:06
Όνομα: ΣΤΑΥΡΟΣ
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 24-05-2011
Μηνύματα: 28
Προεπιλογή

Συγνωμη κατα λαθος δεν συνεχισα το μηνυμα .
Στελνω το αρχειο απο το οποιο θα παιρνω τα στοιχεια check in , check out.
Απο αυτο αρχειο θα προκυπτει ο πινακας που εφτιαξες , με περιορισμους , καθε 2 φορες την εβδομαδα θα εχει αλλαγη "Α" , την ημερομηνια του check out θα πρεπει να γινεται καθαρισμα , και ολα αυτα με περιορισμους να μην πεφτουν 2 Καθαρισματα μαζι ( εαν ειναι δυνατον , εαν οχι να γινεται κοκκινο κ να προτεινεται 2 καθαριστριες ) 1 Καθαρισμα κ 1εως 2 Αλλαγες ειναι οκ , παραπανω παλι να αποφευγεται , εαν ειναι αδυνατον να γινεται κοκκινο κ να προτεινεται 2 καθαριστριες )
Ξερω ειναι πολυ δυσκολο με αρκετα if , και δεν ειμαι σιγουρος οτι ειναι υλοποιησιμο .
Ευχαριστω για αλλη μια φορα .
Συνημμένα Αρχεία
Τύπος Αρχείου: xls καθαρισματα-ver2.xls (22,5 KB, 41 εμφανίσεις)
Απάντηση με παράθεση
  #5  
Παλιά 14-08-11, 12:18
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.249
Προεπιλογή

Καλημέρα Σταύρο!
Το πρόβλημα για αρκετούς φίλους εδώ στο φόρουμ δεν είναι η δυσκολία της υλοποίησης αλλά
η σκέψη και ο χρόνος που θα χρειαστεί κανείς μέχρι να φτάσει στην υλοποίηση.

Στην ουσία ζητάς ολόκληρη εφαρμογή που θα χρειαστεί αρκετές ώρες για να τελειοποιηθεί.

Μια τέτοια λύση δεν μπορεί να δοθεί στα πλαίσια ενός θέματος του φόρουμ.

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

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
  #6  
Παλιά 14-08-11, 23:44
Όνομα: ΣΤΑΥΡΟΣ
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 24-05-2011
Μηνύματα: 28
Προεπιλογή

Ολα καλα Τασο σε ευχαριστω για την βοηθεια σου μεχρι τωρα
Απάντηση με παράθεση
  #7  
Παλιά 16-08-11, 14:33
Όνομα: ΣΤΑΥΡΟΣ
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 24-05-2011
Μηνύματα: 28
Προεπιλογή

καθως επεξεργαζομαι το αρχειο με τον συννημενο πινακα , διαπιστωσα οτι εαν εχω την ιδια ημερομηνια καθαρισμα σε μια κατοικια και επισης σε καποια αλλη , το Κ μπαινει στο κελι μονο για την 1 κατοικια και οχι για την δευτερη , πρεπει να αλλαξω κατι στους τυπους ?
Απάντηση με παράθεση
  #8  
Παλιά 16-08-11, 17:28
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.249
Προεπιλογή

Καλησπέρα Σταύρο!

Ναι, θα χρειαστούν κάποιες μικροαλλαγές στους τύπους.
Στο αρχείο του παραδείγματος, στο Φύλλο1 και στη στήλη "D" ξεκινώντας από το κελί D2, συμπλήρωσε τον τύπο: =B2&C2.
Μπορείς αν θέλεις να κρύψεις αυτή τη στήλη.

Στο Φύλλο2 και στο κελί C2 συμπλήρωσε τον τύπο:
Κώδικας:
=IF(ISNA(MATCH($B2&C$1;Φύλλο1!$D:$D;0));"";IF(INDEX(Φύλλο1!$D:$D;MATCH($B2&C$1;Φύλλο1!$D:$D;0))=$B2&C$1;"K";""))
και σύρε τα κελιά δεξιά και κάτω όσο χρειαστεί.

Καλή συνέχεια!

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
  #9  
Παλιά 17-08-11, 09:55
Όνομα: ΣΤΑΥΡΟΣ
Έκδοση λογισμικού Office: Ms-Office 2003
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 24-05-2011
Μηνύματα: 28
Προεπιλογή

ειναι πολυ καλο τασο , δουλευει μια χαρα , σε ευχαριστω.
πως θα μπορουσα οι φορμουλες που εχει ο πινακας στο Φυλλο2 να γινουν ισως με vba ωστε να μπορει καποιος να επεμβει και να μεταθεσει μερικα Κ σε αλλη ημερομηνια ?
Απάντηση με παράθεση
  #10  
Παλιά 17-08-11, 15:55
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.249
Προεπιλογή

Καλησπέρα Σταύρο!

Δες ένα παραδειγματικό κώδικα:
Κώδικας:
Option Explicit

Sub FillPlanTable()
    Dim rngSourceDates As Range
    Dim rngTargetDates As Range
    Dim rngRooms As Range
    Dim c As Range
    Dim d As Range
    Dim f As Range
    Dim FirstAddress As String
    Dim iCol As Integer
    Dim iRow As Integer

    Set rngSourceDates = Worksheets(1).Range("A:A")
    Set rngRooms = Range("C1:N1")
    On Error GoTo ErrH
    Set rngTargetDates = Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row)
    Application.Calculation = xlCalculationManual
    Application.ScreenUpdating = True
    With rngRooms
        .Offset(1).Resize(rngTargetDates.Count, .Count).Replace _
                What:=ChrW(922), Replacement:="", LookAt:=xlPart, _
                SearchOrder:=xlByRows, MatchCase:=False, _
                SearchFormat:=False, ReplaceFormat:=False

        .Offset(1).Resize(rngTargetDates.Count, .Count).Replace _
                What:="K", Replacement:="", LookAt:=xlPart, _
                SearchOrder:=xlByRows, MatchCase:=False, _
                SearchFormat:=False, ReplaceFormat:=False
    End With
    For Each c In rngTargetDates
        If Not IsEmpty(c) And IsDate(c) Then
            Set f = rngSourceDates.Find(c)
            If Not f Is Nothing Then
                FirstAddress = f.Address
                Do
                    Set d = rngRooms.Find(What:=f.Offset(, 1), LookIn:=xlValues)
                    If Not d Is Nothing Then
                        iRow = c.Row
                        iCol = d.Column
                        Cells(iRow, iCol) = "K"
                    End If
                    Set f = rngSourceDates.Find(What:=c, After:=f)
                    If f Is Nothing Then Exit Do
                Loop While f.Address <> FirstAddress
            End If
        End If
    Next
ErrH:
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
    If Err Then MsgBox Err & vbLf & Err.Description, vbExclamation
End Sub
Δες και το συνημμένο παράδειγμα παρακάτω.


Καλή συνέχεια!

Φιλικά

Τάσος
Συνημμένα Αρχεία
Τύπος Αρχείου: xls ΚΑΘΑΡΙΣΜΑΤΑ.xls (53,5 KB, 62 εμφανίσεις)
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση
Απάντηση στο θέμα

Ετικέτες
vba

Εργαλεία Θεμάτων
Τρόποι εμφάνισης

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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
ΑΥΤΟΜΑΤΗ ΕΝΗΜΕΡΩΣΗ 2ου ΠΙΝΑΚΑ bdim20 Access - Ερωτήσεις / Απαντήσεις 3 23-10-14 13:33
[ Πίνακες ] Αυτόματη καταχώρηση πεδίων πίνακα Α από πίνακα Β όταν καταχωρώ στοιχεία από μια στήλη ευη79 Access - Ερωτήσεις / Απαντήσεις 7 18-01-14 00:42
[Γενικά] Αυτόματη ενημέρωση ΤΕΟΔΩΡΟΣ Excel - Ερωτήσεις / Απαντήσεις 3 25-11-13 08:00
[ Πίνακες ] Ενημέρωση δεδομένων πίνακα από άλλο πίνακα ΚΩΣΤΑΣ2 Access - Ερωτήσεις / Απαντήσεις 2 27-04-11 12:50
[ Ερωτήματα ] Ενημέρωση ενός field πίνακα από 3 Rows άλλου πίνακα stathas Access - Ερωτήσεις / Απαντήσεις 8 23-05-10 11:36


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