Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/)
-   -   [Συναρτήσεις] Ερώτηση για συνάρτηση (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/4499-erotisi-gia-synartisi.html)

Σπύρος23 15-03-17 23:16

Ερώτηση για συνάρτηση
 
1 Συνημμένο(α)
Καλησπέρα σε όλους.
Θα ήθελα αν μπορεί κάποιος να μου δώσει αν υπάρχει κάποια συνάρτηση για το αρχείο που επισυνάπτω.
Ευχαριστώ εκ των προτέρων

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

Spirosgr 16-03-17 08:39

1 Συνημμένο(α)
Καλημέρα
Κατ' αρχήν, δεν πρέπει να δουλεύεις, με συγχωνευμένα κελιά...
Δεν είναι καλό.

Άλλαξε το βιβλίο σε .xlsm για να «δέχεται» κώδικα.
Άλλαξε το κωδικό όνομα του φύλλου (Φύλλο1) σε Sh1
Βάλε στο κελί Κ6, έναν τίτλο πχ Τιμές.

Με δεξί κλικ στην Tab του φύλλου, και κλικ στο View Code ή Εμφάνιση Κώδικα
μεταφερόμαστε πίσω στον «χώρο» της Vba...

Αντέγραψε τον κώδικα:
Κώδικας:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Columns.Count > 1 Then Exit Sub
    If Target.Rows.Count > 1 Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
  If Target.Row < 4 Or Target.Row > 9 Then Exit Sub

    Dim Lrow As Long
    Lrow = Sh1.Cells(Rows.Count, 11).End(xlUp).Row + 1
   
    Sh1.Cells(Lrow, 11).NumberFormat = "#,##0.00"
    Sh1.Cells(Lrow, 11).Value = Sh1.Cells(13, 6).Value
   
    Sh1.Cells(Lrow, 12).NumberFormat = "dd/mm/yyyy"
    Sh1.Cells(Lrow, 12).Value = Date
End Sub


Σημειώσεις:
Αν το Option Explicit υπάρχει ήδη στην αρχή, διέγραψέ το, να μην υπάρχει δύο φορές...

Οι δύο τελευταίες γραμμές του κώδικα, είναι δική μου προσθήκη, για να έχεις στην διπλανή στήλη, μια ημερομηνία καταχώρησης.
Αν δεν το θέλεις, διέγραψέ τις...

Η μορφοποίηση: "#,##0.00" (αριθμός με χιλιάδες και δύο δεκαδικά, που εμφανίζει πάντα τουλάχιστον μονάδες και τα δύο δεκαδικά) μπορεί να αλλάξει κατά το δοκούν...

Η θέση του (,) και (.) στην μορφοποίηση, έχει να κάνει με το λειτουργικό και το office.
Ανάλογα την γλώσσα και τις ρυθμίσεις θα μπορούσε να είναι: "#.##0,00"

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

Σπύρος23 16-03-17 17:43

Κάποιο λάθος κάνω..Μπορείς να μου το ανεβάσείς τροποποιήμενο γιατί παιδεύομαι..
Ευχαριστώ εκ των προτέρων

Spirosgr 16-03-17 20:57

1 Συνημμένο(α)
Ορίστε το αρχείο...

Σπύρος23 16-03-17 22:41

Ευχαριστώ!!!


Η ώρα είναι 17:16.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2