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/3144-eisagogi-synartisis-se-plaisio-keimenoy.html)

perikles 07-05-14 14:43

Εισαγωγή συνάρτησης σε πλαίσιο κειμένου
 
Καλημέρα σας,
συγχαρητήρια για την καλή δουλειά που κάνετε.
Εχω ενα πρόβλημα και θα ήθελα τα φώτα σας.
Σε ένα φύλλο εργασίας εχω εισάγει μια εικόνα και επάνω της εχω τοποθετήσει πλαίσια κειμένου.
Τα πλαίσια κειμένου γεμίζουν με τιμές που είναι αποθηκευμένες στο δεύτερο φύλλο εργασίας.
Μέχρι εδώ όλα καλά.
Στο δεύτερο φύλλο είναι αποθηκευμένες τιμές που περιέχουν δυο λέξεις π.χ. ZIM TARRAGONA.
Θέλω να μπορώ να τοποθετήσω σε δύο ξεχωριστά πλαίσια κειμένου του πρώτου φύλλου τις δύο αυτές λέξεις, δηλαδή σε ένα πλαίσιο κειμένου την λέξη ZIM και σε άλλο πλαίσιο την λέξη TARRAGONA.
Αν υποθέσουμε οτι οι λέξεις ZIM TARRAGONA βρίσκονται στο κελί Α! στο δεύτερο φύλλο, οι συναρτήσεις για να ξεχωριστούν οι λέξεις είναι: για την πρώτη λέξη
LEFT(Φύλλο2!A1;(FIND(" ";(Φύλλο2!A1)-1))
και για την δεύτερη λέξη
RIGHT(Φύλλο2!A1;(LEN(A1)-(FIND(" ";Φύλλο2!A1)))).
Οταν ενεργοποιώ το πλαίσιο κειμένου στο οποίο θέλω να βάλω την πρώτη λέξη και κλικάρω στην γραμμή εντολών δεν δέχεται την συνάρτηση.
Το ίδιο συμβαίνει και με την δεύτερη λέξη.
Βέβαια αν θέλω να βάλω και τις δύο λέξεις μαζί, δεν υπάρχει πρόβλημα, γιατί κλικάρω στην γραμμή εντολών, πάω στο δεύτερο φύλλο, κλικάρω επάνω στο α1 και ερχονται και οι δύο λέξεις σε ένα πλαίσιο κειμένου.
Το πρόβλημα είναι αν γίνεται να τοποθετηθεί συνάρτηση στη γραμμή εντολών για εισαγωγή στο πλαίσιο κειμένου μιας-μιας των λέξεων απο ένα κελί του δεύτερου φύλλου.
Ευχαριστώ

Thanosp 07-05-14 17:05

Καλησπέρα
=LEFT(Φύλλο2!A1;(FIND(" ";Φύλλο2!A1;1))) κ =RIGHT(Φύλλο2!A1;(LEN(Φύλλο2!A1)-(FIND(" ";Φύλλο2!A1))))
Θανάσης

perikles 07-05-14 18:31

Αγαπητέ Θάνο,
σε ευχαριστώ για την άμεση απάντηση, αλλά το θέμα δεν είναι ποιά συνάρτηση χρειάζεται.
Την συνάρτηση την γνωρίζω.
Το πρόβλημα είναι οτι όταν κάνω ενεργό το πλαίσιο κειμένου και πηγαίνω στην γραμμή εντολών και γράφω π.χ. το "=MID(A1;1;4)" προκειμένου να έλθει το περιεχόμενο του Α1 μέσα στο πλαίσιο κειμένου, μόλις πατήσω ENTER βγάζει μια ταμπέλα που λέει "το κείμενο που έχετε εισαγάγει δεν αποτελεί έγκυρη αναφορά ή όνομα που έχει ορισθεί".
Η μόνη λύση που έχω βρεί είναι να βάζω την συνάρτηση σε κάποιο κελί του φύλλου εργασίας και μετά να τοποθετώ το περιεχόμενο αυτού του κελιού στο πλαίσιο κειμένου.
Είναι σαν να πηγαίνω Αθήνα-Πειραιά μέσω Σουνίου.
Και πάλι σε ευχαριστώ.

Spirosgr 07-05-14 21:13

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

Thanosp 08-05-14 07:22

Καλημέρα
Περικλή ανέβασε δείγμα αρχείου, για να δούμε τα πλαίσια κειμένου, είναι στο φύλλο ή σε φόρμα;
Θανάσης

Spirosgr 08-05-14 08:10

Καλημέρα
Θανάση
"Σε ένα φύλλο εργασίας εχω εισάγει μια εικόνα και επάνω της εχω τοποθετήσει πλαίσια κειμένου."
Στο φύλλο είναι επάνω σε εικόνα.

perikles 08-05-14 09:33

Σωστός ο Σπύρος.
Στο φύλλο επάνω είναι η εικόνα.
Η εικόνα είναι ένα εντυπο που συμπληρώνεται με το χέρι.
Την σκανάρισα και την έκανα εισαγωγή σε ένα βιβλίο εργασίας του excel.
Οπου έπρεπε να εισαχθούν δεδομένα τοποθέτησα πλαίσια κειμένου.
Στο δεύτερο φύλλο έβαλα τα δεδομένα που θα εισαχθούν στα πλαίσια κειμένου της εικόνας του πρώτου φύλλου.
Συνέδεσα τα πλαίσια κειμένου με τα αντίστοιχα κελιά του δεύτερου φύλλου, από όπου ερχονται τα δεδομένα.
Προέκυψε όμως στην πορεία, κάποια κελιά του δεύτερου φύλλου να έχουν δύο λέξεις, ενώ στα πλαίσια έπρεπε να μπούν σε ξεχωριστά πλαίσια.
Τις συναρτήσεις διαχωρισμού τις γνωρίζω.
Το πρόβλημα είναι οτι δεν τις δέχεται (δεν μπορούν να συνδεθούν) στα πλαίσια κειμένου.
Ετσι αναγκάζομαι να υπολογίζω τον διαχωρισμό των λέξεων σε κάποια κελιά του δεύτερου φύλλου και από εκεί να τα μεταφέρω στα πλαίσια κειμένου.
Ρωτώ λοιπόν αν υπάρχει τρόπος να εισαχθεί απευθείας κάποια συνάρτηση μέσα σε πλαίσιο κειμένου.
Και πάλι ευχαριστώ

kapetang 08-05-14 10:00

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

Περικλή, μια υλοποίηση του ζητούμενου θα μπορούσε να γίνει με κώδικα.

Δες το επισυναπτόμενο αρχείο

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

perikles 08-05-14 10:20

Γιώργο σε ευχαριστώ για την απάντηση.
Στην εικόνα του πρώτου φύλλου υπάρχουν περίπου 80 πλαίσια κειμένου.
Οπως καταλαβαίνεις είναι χρονοβόρο να φτιάξω κώδικα για όλα αυτά.
Παρεπιπτόντως ο κώδικας που μου έστειλες δουλεύει άψογα.
Το ερώτημά μου όμως, που δεν έχει απαντηθεί είναι:
Μπορούν να εισαχθούν συναρτήσεις (χωρίς την χρήση VBA) μέσα σε πλαίσια κειμένου και εάν ναι, πώς?
Και πάλι ευχαριστώ.

Tasos 08-05-14 11:45

Καλημέρα!

Σε καμία περίπτωση δεν μπορεί να υπολογιστεί μια συνάρτηση σε πλαίσιο κειμένου είτε αυτό είναι πλαίσιο κειμένου της εφαρμογής είτε ActiveX.

Μπορούμε όμως να περάσουμε τις συναρτήσεις σε μια στήλη και να συνδέσουμε τα πλαίσια κειμένου με τα κελιά της στήλης αυτής.

Πως; Επιλέγουμε το πλαίσιο κειμένου, κάνουμε κλικ στη γραμμή τύπων και επιλέγουμε το κελί που θέλουμε να συνδέσουμε.

Για όποιον ενδιαφέρεται, παραθέτω παρακάτω έναν κώδικα VBA ο οποίος:

  • Δημιουργεί και συνδέει τα πλαίσια κειμένου με τα κελιά της περιοχής A2:A100 (που θα μπορούσαν να περιέχουν τις συναρτήσεις)
  • Μετονομάζει το κάθε πλαίσιο κειμένου σε "Textbox For " & τη διεύθυνση του κελιού με το οποίο συνδέεται.
  • Τοποθετεί τα πλαίσια κειμένου στα διπλανά κελιά της περιοχής A2:A100

Κώδικας:

Sub CreateTextBoxes()
    Dim shp As Shape, rng As Range, c As Range
    Set rng = Range("A2:A100")
    For Each c In rng
        Set shp = ActiveSheet.Shapes.AddLabel(msoTextOrientationHorizontal, 0, 0, 5, 5)
        shp.Name = "TextBox For " & c.Address(False, False)
        shp.Top = c.Top
        shp.Left = c.Offset(, 1).Left
        shp.Width = c.Offset(, 1).Width
        shp.Height = c.Height
        shp.OLEFormat.Object.Formula = "=" & c.Address
    Next
End Sub

Τάσος

Spirosgr 08-05-14 11:57

Η συγκεκριμένη ερώτηση σου Περικλή post#9
"Το ερώτημά μου όμως, που δεν έχει απαντηθεί είναι:"
"Μπορούν να εισαχθούν συναρτήσεις (χωρίς την χρήση VBA) μέσα σε πλαίσια κειμένου και εάν ναι, πώς?"
Απαντήθηκε στο post#4
"Η μόνη σωστή διαδρομή για το συγκεκριμένο λεωφορείο είναι μέσω Σουνίου"
κατά την περιγραφή σου...
Δηλαδή όπως το έκανες μέχρι τώρα (με link σε κελί)

perikles 08-05-14 11:58

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

Spirosgr 08-05-14 12:11

Τάσο καλημέρα
ο κώδικας είναι καταπληκτικός !


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

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


Search Engine Optimization by vBSEO 3.3.2