Εμφάνιση ενός μόνο μηνύματος
  #28  
Παλιά 13-05-10, 10:38
pm4698 Ο χρήστης pm4698 δεν είναι συνδεδεμένος
Όνομα: Παντελής
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 18-02-2010
Περιοχή: Καβάλα
Μηνύματα: 54
Προεπιλογή

Καλημέρα στην κοινότητα! Έχω μία απορία - προέκταση του συγκεκριμένου θέματος.
Θέλω όταν η φόρμα της ημέρας είναι κλειστή, να πατάω ένα κουμπί και να πηγαίνει σε όλες τις εγγραφές του πεδίου Υπηρεσία1 της συνεχούς φόρμας και να κάνει ουσιαστικά requery τον παρακάτω κώδικα.

DoCmd.GoToRecord , , acFirst


Dim FormOpemArgs$, TargetTextBoxName$
If IsNull(Me.OptWeekDays) And Not IsNull(Me.Υπηρεσία1) Then Exit Sub
Select Case Me.Υπηρεσία1
Case "ΤΑΜ1"
TargetTextBoxName = "k1"
Case "ΤΑΜ2"
TargetTextBoxName = "k2"
Case "ΤΑΜ3"
TargetTextBoxName = "k3"
End Select
strForname = Choose(Me.OptWeekDays, "ΥΠ_ΚΑΘ", "ΥΠ_ΣΑΒ")

' Προυπόθεση είναι ότι η φόρμα είναι κλειστή
Forms(strForname).Controls(TargetTextBoxName) = Me.Επώνυμο

'Η φόρμα έχει ήδη ανοίξει από την προηγούμενη γραμμή κώδικα
Do While Me.CurrentRecord - 1 < Me.RecordsetClone.RecordCount
FormOpemArgs = TargetTextBoxName & ";" & Me.Επώνυμο
DoCmd.OpenForm strForname, , , , , , FormOpemArgs
End If

DoCmd.GoToRecord , , acNext
Loop

Επειδή οι εγγραφές που περνούν στην φόρμα που ανοίγει δεν αποθηκεύονται κάπου όταν αυτή κλείνει, σε περίπτωση λάθους που πρέπει να αλλάξει κάτι θέλω με το πάτημα ενός κουμπιού να περνιούνται όλα τα combo boxes Υπηρεσία1 και να εκτελείται ο κώδικας από πίσω τους έτσι ώστε να ανοίγει πρώτα η φόρμα για να περνάει η πρώτη εγγραφή και μετά εφόσον έχει ανοίξει να περνούν και οι υπόλοιπες.

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

DoCmd.GoToRecord , , acNext

Καμιά ιδέα?

Ευχαριστώ
Απάντηση με παράθεση