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/3789-kataxorisi-posoi-kai-posostoi-se-ena-keli.html)

mantarinia 06-09-15 09:46

Παράθεση:

Αρχική Δημοσίευση από kapetang (Μήνυμα 21764)
Καλησπέρα

Αντώνη, δες το συνημμένο.

Στο φύλλο «Νέο» προσάρμοσα τον κώδικα, ώστε να καλύπτει οποιοδήποτε αριθμό ζευγών γραμμών, με ελάχιστη προσαρμογή.

Φιλικά/Γιώργος

Γιώργο,
Είναι εύκολο να προσαρμοστούν και
οι δύο κώδικες στο ίδιο αρχείο;
Εγω το προσάρμοσα με αντιγραφή και επικόλληση
και δεν δουλεύει (στο νεο οπως το εφτιαξες εσυ λειτουργει κανονικά).
Ευχαριστώ και πάλι

kapetang 06-09-15 10:20

Καλημέρα

Αντώνη, στο αρχείο που ανέβασα έχουμε 2 περιπτώσεις υπολογισμού του ποσοστού.

1) Στο φύλλο «Αρχικό» οι αντίστοιχες τιμές βρίσκονται σε ζεύγη στηλών.

2) Στο φύλλο «Νέο» οι αντίστοιχες τιμές βρίσκονται σε ζεύγη γραμμών.

Δηλαδή και οι δύο περιπτώσεις βρίσκονται στο ίδιο βιβλίο, αλλά σε διαφορετικά φύλλα.

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

Ο κώδικας δε θα είναι μια απλή συνένωση των δύο διαδικασιών.

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

Φιλικά/Γιώργος

mantarinia 06-09-15 11:35

Παράθεση:

Αρχική Δημοσίευση από kapetang (Μήνυμα 21787)
Καλημέρα

Αντώνη, στο αρχείο που ανέβασα έχουμε 2 περιπτώσεις υπολογισμού του ποσοστού.

1) Στο φύλλο «Αρχικό» οι αντίστοιχες τιμές βρίσκονται σε ζεύγη στηλών.

2) Στο φύλλο «Νέο» οι αντίστοιχες τιμές βρίσκονται σε ζεύγη γραμμών.

Δηλαδή και οι δύο περιπτώσεις βρίσκονται στο ίδιο βιβλίο, αλλά σε διαφορετικά φύλλα.

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

Ο κώδικας δε θα είναι μια απλή συνένωση των δύο διαδικασιών.

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

Φιλικά/Γιώργος


Ευχαριστώ πολύ Γιώργο!!!
Πάντα άμεσος και σωστος....
Καλή συνέχεια

mantarinia 09-09-16 10:43

1 Συνημμένο(α)
Καλημέρα,

Θέλω μια βοήθεια στο θέμα με την αυτόματη καταχώρηση
της ποσοστιαίας μεταβολής στο ίδιο κελί.
Όταν το ποσό ξεπερνά το χίλια χάνει το διαχωριστικό της χιλιάδας.
Πως μπορώ να το επαναφέρω; (προφανώς μέσα από τον κώδικα!!!, αλλά δεν γνωρίζω πως θα το κάνω)
Επίσης ήθελα να ρωτήσω το εξής σχετικά με την προσαρμογή του κώδικα:
'Εδώ συμπληρώνονται όλα τα τμήματα των γραμμών με την τιμή και το ποσοστό
strNew = Array("D2:G2")
'Εδώ συπληρώνονται οι αντίστοιχες μετατοπίσεις
Offset = Array(3)


Για τις αντίστοιχες μετατοπίσεις μπορώ να διακόπτω την ενέργεια
σε συγκεκριμένο κελί ή γραμμή (ας πούμε η εντολή να διακόπτεται στο κελί Η5)

Ευχαριστώ πολύ για την όποια βοήθεια

kapetang 09-09-16 14:29

1 Συνημμένο(α)
Καλησπέρα

1) Όπως γνωρίζουμε, το ποσοστό μεταβολής από την αρχική τιμή a στην τελική b, δίνεται από τον τύπο: (b-a)/Abs(a).

Στον κώδικα του φύλλου «Νέο» (όπως ήταν) ορίζεται:

strNew = Array("D2:G2") και Offset = Array(3).

Αυτό σημαίνει ότι για τον υπολογισμό του ποσοστού οι αρχικές τιμές λαμβάνονται από την περιοχή D5:G5, που προκύπτει από την D2:G2, αν την μετατοπίσουμε 3 γραμμές και οι τελικές από την D2:G2.

2) Στον κώδικα έγινε αλλαγή για την εμφάνιση του διαχωριστικού των χιλιάδων στα ποσά της περιοχή D2:G2.

Αυτό γίνεται με τον κώδικα: Format(x, "#,##0.00")

Τα μηδενικά μετά την τελεία προσδιορίζουν το πλήθος των δεκαδικών, που θα εμφανίζονται (μπορείς να το αλλάξεις).

3) Το ερώτημα «Για τις αντίστοιχες μετατοπίσεις μπορώ να διακόπτω την ενέργεια σε συγκεκριμένο κελί ή γραμμή (ας πούμε η εντολή να διακόπτεται στο κελί Η5)» χρειάζεται διευκρίνιση.

Αν στον κώδικα θέσω: strNew = Array("D2:G2", «K1:N1”) και Offset = Array(1, 4 ), θα οριστούν 4 περιοχές κελιών:

Η D2:G2 με αντίστοιχη την D3:G3 (προκύπτει από την μετατόπιση της D2:G2 κατά 1 γραμμή) και η K1:N1 με αντίστοιχη την K5:N5 (προκύπτει από την μετατόπιση της K1:N1 κατά 4 γραμμές).

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

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

Σε ποια διακοπή συνεπώς αναφέρεται το ζητούμενο;

Φιλικά/Γιώργος

mantarinia 13-09-16 14:44

Γιώργο καλησπέρα,
Για άλλη μια φορά είσαι εξαιρετικός
σαφής και άμεσος.

Χίλια ευχαριστώ:thumbup1:

kapetang 13-09-16 16:05

Αντώνη να είσαι καλά.

mantarinia 03-06-19 16:09

1 Συνημμένο(α)
Παράθεση:

Αρχική Δημοσίευση από kapetang (Μήνυμα 21621)
Καλησπέρα

Αντώνη, δες το συνημμένο.

Έχω αλλάξει τον κώδικα έτσι ώστε, με ελάχιστη προσαρμογή, να καλύπτει οποιοδήποτε αριθμό ζευγών στηλών.

Φιλικά/Γιώργος

Γιώργο καλησπέρα,

Έχω ένα πρόβλημα με τον κώδικα, το οποίο
παρουσιάζεται μόνο στον δικό μου υπολογιστή.

Είναι ένα αρχείο με κώδικα που το ρύθμισες εσύ.
Τι γίνεται λοιπόν.
Το ίδιο αρχείο σε οποιονδήποτε υπολογιστή βγάζει τα σωστά
αποτελέσματα εκτός από τον δικό μου (παρουσιάζεται 1 παραπάνω (,) το οποίο χαλάει τα αποτελέσματα.

Σου επισυνάπτω το δείγμα (το οποίο τονίζω ότι σε άλλον υπολογιστή τρέχει σωστά).
Τι φταίει;;
Σε παρακαλώ θα χρειαστώ την βοήθειά σου.
Ευχαριστώ εκ των προτέρων.

kapetang 03-06-19 19:23

Καλησπέρα

Αντώνη άνοιξα το αρχείο στον υπολογιστή μου (Windows 10 ελληνικά με Office 2016 64b ελληνικό) και λειτουργεί σωστά.

Δεν ξέρω που οφείλεται το λάθος. Αποκλείω όμως να οφείλεται στον κώδικα.

Θα πρέπει να δεις τις τοπικές ρυθμίσεις του λειτουργικού και του office.

Πιθανόν να χρειαστεί επιδιόρθωση ή επανεγκατάσταση του Office.


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

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


Search Engine Optimization by vBSEO 3.3.2