Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/)
-   -   [VBA] Αναζήτηση και πέρασμα τιμών σε UserForm (https://www.ms-office.gr/forum/excel-erotiseis-apantiseis/2526-anazitisi-kai-perasma-timon-se-userform.html)

ΤΖΙΜΗΣ 18-05-13 22:39

Αναζήτηση και πέρασμα τιμών σε UserForm
 
1 Συνημμένο(α)
Καλησπέρα σε όλους τους αγαπητούς φίλους.
Έχω ανεβάσει ένα πρδ. για το τι ακριβώς ζητώ και πιστεύω να είναι χρήσιμο σε όλη την κοινότητα.
Στο φύλλο1 υπάρχει ένα κουμπί εντολής όπου ενεργοποιείται η userform1.Στο φύλλο 2 υπάρχει μια βάση δεδομένων (DATA).Θέλω να γίνεται αναζήτηση στη βάση όταν δώσουμε ΑΦΜ στο κατάλληλο πεδίο της userform1 και εν συνεχεία να περνά τα υπόλοιπα στοιχεία της βάσης στα αντίστοιχα πεδία της userform1.Αν δεν υπάρχει να εμφανίζεται ανάλογο διαμορφωμένο μνμ.
Και κάτι τελευταίο.Πως φορτώνεται η userform1 κατευθείαν κατά το άνοιγμα του φύλλου1 χωρίς κουμπί εντολής.
Να είστε όλοι πάντα καλά με υγεία
Με εκτίμηση Τζίμης.

Spirosgr 18-05-13 23:26

Καλησπέρα
ΤΖΙΜΗ το εύκολο κομμάτι είναι
Στο ThisWorkbook βάλε τον κώδικα
Κώδικας:

Private Sub Workbook_Open()
    Sh1.Activate
    UserForm1.Show
End Sub

Όπου Sh1 το κωδικό όνομα του φύλλου
και UserForm1 το όνομα της φόρμας
Με το άνοιγμα του βιβλίου ανοίγει το φύλλο Sh1 και μαζί αυτόματα και η φόρμα
Τα υπόλοιπα αύριο...
καλό βράδυ σ' όλους

ΤΖΙΜΗΣ 18-05-13 23:32

Ευχαριστώ πολύ Σπύρο και καλό σου βράδυ
Τζίμης

KostasZK 18-05-13 23:55

1 Συνημμένο(α)
Τζίμη και υπόλοιποι επιτρέψτε μου να σας δείξω την πρώτη μου προσπάθεια σε VBA

ΤΖΙΜΗΣ 19-05-13 00:02

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

KostasZK 19-05-13 00:55

1 Συνημμένο(α)
Σ' ευχαριστώ.
Το διόρθωσα λίγο. Αν κάνεις πετυχημένη αναζήτηση και μετά μια αποτυχημένη να σβήνει τα στοιχεία.
Δεν μπορώ να βάλω όμορφα το MsgBox που να λέει "Δεν υπάρχει τέτοιος ΑΦΜ".

Spirosgr 19-05-13 12:25

1 Συνημμένο(α)
Καλημέρα
Στο φύλλο που ακολουθεί υπάρχει ο κώδικας του φίλου Κώστα βελτιωμένος.
Η φόρμα ανοίγει χωρίς κουμπί με την φόρτωση του βιβλίου σε συγκεκριμένο φύλλο.
Αν ο ΑΦΜ είναι καταχωρημένος εμφανίζονται τα στοιχεία του ατόμου στον οποίον ανήκει ο ΑΦΜ.
Αν όχι τα textboxes παίρνουν την τιμή "Δεν υπάρχει...." .
Στο σημείο του κώδικα For i = 2 to 11 το 11 έχει αντικατασταθεί με μία γραμμή που βρίσκει την τελευταία Row γιατί είναι προφανές ότι δεν θα έχει το φύλλο μόνο 11 εγγραφές αλλά περισσότερες και πιθανόν να αυξάνονται καθημερινά.

Φίλε Κώστα για πρώτη δημιουργία κώδικα συγχαρητήρια και να συνεχίζεις ανεβάζοντας τις εργασίες σου για να βελτιώνεσαι μέσα από τυχόν λάθη και παραλήψεις.
Και όπως μου έχει διδάξει ένας πολύ καλός φίλος μου πρέπει να σκέφτεσαι τι λάθος θα κάνει ο χρήστης για να βάζεις ελέγχους στις εντολές και να σκέφτεσαι τι μπορεί ή πρέπει να επακολουθήσει μετά.
Αν μπορείς να "γυρίσεις" την excel σε Αγγλική γλώσσα θα σε βοηθήσει αφάνταστα.
Και πάλι συγχαρητήρια και καλή συνέχεια!

ΤΖΙΜΗΣ 19-05-13 12:54

Σπύρο ευχαριστώ και εσένα.Απλά ήθελα να ρωτήσω η εντολή End(xlUp).Row + 1 ελέγχει μέχρι ποια γραμμή περιλαμβάνονται στοιχεία;
Τζίμης

Spirosgr 19-05-13 13:20

Με αφετηρία το τελευταίο κελί της στήλης Α πχ που είναι το Α 1,048,576 για 2007 και νεώτερο
και το Α 65,536 για 2003 ελέγχει ποια είναι η τελευταία γραμμή που έχει δεδομένα +1 που είναι σίγουρα κενή.
Αυτό βοηθάει και σε αντιγραφές από άλλα πχ φύλλα που θέλουμε επικόλληση στην πρώτη κενή γραμμή μιάς περιοχής.
Περισσότερα για τα όρια και τις δυνατότητες των εκδόσεων της excel στα πιο κάτω Links:
Για 2003
Excel specifications and limits - Excel - Office.com
Για 2007
Excel specifications and limits - Excel - Office.com
Για 2010
Excel specifications and limits - Excel - Office.com
Για 2013
http://office.microsoft.com/en-us/ex...102837464.aspx

KostasZK 20-05-13 00:11

Όταν το πατίνι δέχεται έπαινο από Φεράρι, ευχαριστιέται πολλαπλά.
Σ' ευχαριστώ Σπύρο.
Κώστας


Η ώρα είναι 20:41.

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


Search Engine Optimization by vBSEO 3.3.2