Η σελίδα μας αναβαθμίστηκε, γι' αυτό τον λόγο τα μέλη μας θα πρέπει να ζητήσουν νέο κωδικό πρόσβασης από την υπηρεσία "Αποστολή κωδικού πρόσβασης".
Εάν το email με τον νέο κωδικό δεν έρθει στο inbox κοιτάξτε και στο spam folder. Ο server είναι φρέσκος και δεν έχει το reputation που του αξίζει.

dao recorset

Συζητήσεις για την τοπική βάση δεδομένων Access της Microsoft

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
aterzakis
Δημοσιεύσεις: 57
Εγγραφή: 28 Νοέμ 2007 00:06

dao recorset

Δημοσίευση από aterzakis » 02 Δεκ 2008 22:43

τί λάθος υπάρχει στον παρακάτω κώδικα. δε βρίσκει λέει τη φόρμα asthenis
υπαρχει όμως. δουλεύω σε 2003. έχω δοκιμάσει όλες τις παραλλαγές στη σύνταξη με [] κτλ
χρειάζεται μήπως τιποτα exta να εγκαταστήσω..
Dim rst As DAO.Recordset
Set rst = Forms!asthenis.RecordsetClone


rst.FindFirst "code_asth=" & list0
[Forms]![asthenis].Bookmark = rst.Bookmark

Άβαταρ μέλους
kon73
Script Master
Δημοσιεύσεις: 224
Εγγραφή: 13 Απρ 2008 23:47
Επικοινωνία:

dao recorset

Δημοσίευση από kon73 » 02 Δεκ 2008 23:38

Φίλε aterzakis

To List0 προφανώς δεν είναι κείμενο είναι αριθμός σωστά? (Αν είναι κείμενο τότε πρέπει να βάλεις '). Ο κώδικας σου δεν φαίνεται να έχει πρόβλημα, όμως επειδή αυτό που γράφεις είναι ουσιαστικά για μετάβαση στην εγγραφή που δείχνει η list0 αν ο κώδικας τρέχει στην τρέχουσα φόρμα δοκίμασε να αλλάξεις το
Forms!asthenis με το me. Δηλαδή

Κώδικας: Επιλογή όλων

Dim rst As DAO.Recordset
Set rst = me.RecordsetClone
rst.FindFirst "code_asth=" & list0
me.Bookmark = rst.Bookmark
Αν και ίσως έχεις γράψει λάθος το όνομα της φόρμας σου αυτό και τόσα απλά σου αναφέρει η Access στο μήνυμα σου ότι δεν το βρίσκει.

Αν πάλι έχεις πρόβλημα στείλε την βάση σου.

Φιλικά

kon73
My New Site http://www.MsAccess.gr
Free Access (VBA Code,Tutorials, Mdbs, Eclass, Eshop)
Εικόνα

aterzakis
Δημοσιεύσεις: 57
Εγγραφή: 28 Νοέμ 2007 00:06

dao recorset

Δημοσίευση από aterzakis » 03 Δεκ 2008 00:48

ναι το List0 ειναι αριθμος
όταν λες "αν ο κώδικας τρέχει στην τρέχουσα φόρμα δοκίμασε να αλλάξεις το
Forms!asthenis με το me." τί εννοείς? ο κώδικας είναι σε μία φόρμα η οποία δεν είναι η φόρμα asthenis.. αρα δεν παίζει to me. σωστα? και σε άσχετο παράδειγμα που το κάνω-απλό-πάλι δε δουλεύει..και παντού δε βρίσκει τη φόρμα..γι αυτο λέω μήπως έχω πρόβλημα στη σύνταξη με τις αγκύλες..
όταν πάω από δόμηση εκφράσεων να κάνω διάφορα βλέπω ότι φτιάχνει την εξής σύνταξη:
forms![nameform]!onomaPediou
αλλου βλέπω
[forms]![nameform]![onomaPediou]
έχω μπερδευτεί..τί να ακολουθώ?

Άβαταρ μέλους
kon73
Script Master
Δημοσιεύσεις: 224
Εγγραφή: 13 Απρ 2008 23:47
Επικοινωνία:

dao recorset

Δημοσίευση από kon73 » 03 Δεκ 2008 09:33

Φίλε aterzaki καλημέρα,

Και τα δύο είναι σωστά.
Επιβάλονται τα [ ] όταν το όνομα της φόρμας ή του αντικειμένου control είναι με κενά διαστήματα πχ [Επώνυμο Ασθενή]. Δεν συνιστάται όμως να έχεις Ελληνικά ονόματα και ονόματα με κενά.
Ως προτεινόμενη λύση σου προτείνω
Forms("nameforms").controls("Onomapediou") καθότι στο nameforms και στο onomapediou μπορείς με αυτήν την σύνταξη να έχεις και μεταβλητές τύπου String. Πχ

Κώδικας: Επιλογή όλων

Dim StrForm, StrControl as string
StrForm="NameForm"
StrControl="Onomapediou"
Forms(StrForm).controls(StrControl) ή
Forms("nameforms").controls("Onomapediou") 
Κάτι που ίσως δεν σκέφτηκα είναι μήπως η φόρμα σου είναι υποφόρμα μίας άλλης φόρμας οπότε η σύνταξη για αναφορά σε υποφόρμα γίνεται σε

Κώδικας: Επιλογή όλων

Forms("nameforms").controls("OnomaSubForm").Form.controls("Onomapediou") 
και γι'αυτό δεν βρίσκει την φόρμα σου.

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

Φιλικά

kon73
My New Site http://www.MsAccess.gr
Free Access (VBA Code,Tutorials, Mdbs, Eclass, Eshop)
Εικόνα

Απάντηση

Επιστροφή στο “MS Access”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες