Ανανέωση ιστοσελίδας

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 23-04-18, 14:22
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 02-04-2013
Περιοχή: Κύπρος
Μηνύματα: 738
Προεπιλογή Cancel Event

Φίλοι μου γειά σας,

Αντιμετωπίζω ένα πρόβλημα το οποίο σχετίζεται με το Timer σε μια φόρμα. Πιο συγκεκριμένα:

Σε μια φόρμα έχω καθορίσει στo Timer Event να εκτελείται ένας κώδικας. Εχω καθορίσει το Timer Interval στο 400 διότι αυτό με βολεύει. Ωστόσο το πρόβλημα που αντιμετωπίζω είναι ότι εφόσον ολοκληθωθεί ένας χρονικός κύκλος εκτέλεσης του κώδικα, τότε θα ήθελα να σταματά και να μην εκτελεόται ξανά.. Οπότε δοκίμασα διάφορα χωρίς όμως αποτέλεσμα.

Εχω γράψει τον πιο κάτω κώδικα και θα ήθελα την βοήθεια σας έτσι ώστε να μπορέσω να φτάσω στο ζητούμενο:

Private Sub Form_Timer()
Static intCount As Integer
intCount = intCount + 10

Me.ProgressBar.Value = intCount

If intCount = 20 Then
Me.txtProgress = "Loading 20%"
Else
If intCount = 30 Then
Me.txtProgress = "Loading 30%"
Else
If intCount = 40 Then
Me.txtProgress = "Loading 40%"
Else
If intCount = 50 Then
Me.txtProgress = "Loading 50%"
Else
If intCount = 60 Then
Me.txtProgress = "Loading 60%"
Else
If intCount = 70 Then
Me.txtProgress = "Loading 70%"
Else
If intCount = 80 Then
Me.txtProgress = "Loading 80%"
Else
If intCount = 90 Then
Me.txtProgress = "Loading 90%"
Else
If intCount = 100 Then
Me.txtProgress = "Loading 100%"
Else
If intCount = 105 Then
Me.txtProgress = "Finished 100%"
Else
If intCount = 110 Then
Me.txtProgress = "Finished 100%"
DoCmd.CancelEvent ' Δοκίμασα αυτή την εντολή αλλά μάταια..

End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End If
End Sub
Απάντηση με παράθεση
  #2  
Παλιά 26-04-18, 14:46
Όνομα: Χρήστος
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 18-11-2012
Περιοχή: Deutschland
Μηνύματα: 205
Προεπιλογή

Φυσικά και δοκίμασες αλλά μάταια γιατί ο κώδικας εκτελείται ΚΑΘΕ 0.4 Δευτερόλεπτα εφόσον τον έχεις γράψει στο Timer της φόρμας σου.
Απάντηση με παράθεση
  #3  
Παλιά 26-04-18, 15:40
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 02-04-2013
Περιοχή: Κύπρος
Μηνύματα: 738
Προεπιλογή

Γειά σου Χρίστο,

αν και δεν κατάλαβα πως αλιώς θα το έκανες εσύ φίλε μου, θα ήθελες να το μοιραστείς μαζί μας? Και ξέχασα να αναφέρω πως την λύση την προσέφερε ο φίλος George Vrachnakis αλλάζωντας απλά μια εντολη την Me.TimerInterval=0 στο τελος του κώδικα

Else
If intCount = 110 Then
Me.txtProgress = "Finished 100%"
Me.TimerInterval=0


Σε κάθε περίτωση σε ευχαριστώ πολύ..!!
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
event BeforeUpdate ras64 Access - Ερωτήσεις / Απαντήσεις 0 03-03-14 21:19
Cancel Record Χρήστος Access - Ερωτήσεις / Απαντήσεις 1 23-02-12 17:54


Η ώρα είναι 09:04.