Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Access > Access - Ερωτήσεις / Απαντήσεις > Κλείσιμο όλων των ανοιχτών φορμών εκτός απο την MainForm και την LoginForm

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

Κλειστό Θέμα

 

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

Καλημερα σε όλους τους φίλους του φορουμ,

Εύχομαι κατά αρχάς Καλές Γιορτές - με υγεία πάνω απο όλα..!!

Αντιμετωπίζω ένα μικρό πρόβημα το οποίο δεν μπορώ να επιλύσω καθώς δεν διαθέτω τις απαιτούμενες γνώσεις προγραμματισμού Vba.

Με την βοήθεια του φίλου Γιώργου (Kapetang) κάποια στιγμή μου είχε γράψει έναν κώδικα έτσι ώστε όταν καλείται να βρίσκει και να κλείνει όλες τις ανοιχτές φόρμες που υπάρχουν στην βάση μου. Το πρόβλημα όμως τώρα ειναι ότι δεν θέλω να κλείνει δύο συγκεκριμμένες φόρμες (την frmStartupScreen και την frmLogon).

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

Function CloseAllForms()

Dim obj As AccessObject, dbs As Object
Set dbs = Application.CurrentProject
' Search for open AccessObject objects in AllForms collection.
For Each obj In dbs.AllForms
If obj.IsLoaded = True Then
DoCmd.Close acForm, obj.Name, acSaveYes
' Print name of obj.
Debug.Print obj.Name
End If
Next obj
'έχω δώσει αυτήν την εντολή εφόσον θέλω να παραμένουν ανοιχτές αυτές οι δύο φόρμες όμως μου δημιουργεί πρόβλημα εφόσον ανοίξουν εκ νέου....

DoCmd.OpenForm "frmLogon"
DoCmd.OpenForm "frmStartupScreen"

End Function
  #2  
Παλιά 11-12-14, 10:37
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα

Γιώργο, δοκίμασε τον παρακάτω κώδικα:

Κώδικας:
Public Sub CloseAllForms()
    Dim j As Long
    For j = Forms.Count - 1 To 0 Step -1
        If Not (Forms(j).Name = "frmLogon" Or _
            Forms(j).Name = "frmStartupScreen") Then
            DoCmd.Close acForm, Forms(j).Name, acSaveYes
        End If
    Next
End Sub
Φιλικά/Γιώργος
  #3  
Παλιά 11-12-14, 19:44
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2007, Ms-Office 2013
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 02-04-2013
Περιοχή: Κύπρος
Μηνύματα: 738
Προεπιλογή

Καλησπέρα φίλε Γιώργο και εύχομαι να είσαι καλά,

Και φυσικά δουλεύει φίλε μου ο κώδκας εφόσον προέρχεται απο εσένα..!!!!
Γιώργο σε υπέρ-ευχαριστώ και εύχομαι ο θεός να σου δίνει πάνω απο όλα υγεία αλλά και δύναμη και κουράγιο να μπορείς να ανέχεσαι εμάς τους αρχάριους που σας κουράζουμε με τις αδεξιότητες μας στο θέμα vba και φυσικά βάζω τον εαυτό μου πρώτα απο όλους..

Σε ευχαριστώ Γιώργο νάσαι καλά.
Κλειστό Θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Συναρτήσεις] Θέλω να αφήσω εκτός υπολογισμού Σαββατοκύριακα και επίσημες αργίες dikatsu Excel - Ερωτήσεις / Απαντήσεις 4 04-07-16 19:02
[ Φόρμες ] Επιλογή όλων (check box) mgeorge Access - Ερωτήσεις / Απαντήσεις 8 10-08-14 19:40
κλείσιμο όλων των ανοιχτών φορμών γιώργοςΚ Access - Ερωτήσεις / Απαντήσεις 5 01-07-14 20:07
[ Φόρμες ] Ανανέωση Φορμών stelianta Access - Ερωτήσεις / Απαντήσεις 2 21-03-12 21:51
[ Φόρμες ] Επικοινωνία δύο φορμών iondep Access - Ερωτήσεις / Απαντήσεις 9 30-09-10 16:29


Η ώρα είναι 22:14.