Εμφάνιση ενός μόνο μηνύματος
  #2  
Παλιά 10-08-11, 20:47
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.028
Προεπιλογή

Καλησπέρα Τζίμη!

Δεν θα μπορέσει κανείς να σου δώσει κάποια λύση βασισμένη στο αρχείο που ανέβασες.

Η λύση που ζητάς προϋποθέτει δεδομένα που σχετίζονται μεταξύ τους με κάποιο ID και που θα έχει ομοειδή τύπο δεδομένων.
Στον ένα πίνακα (tbl1) έχεις ένα ID που μπορεί να χρησιμοποιηθεί σαν αναγνωριστικό του πελάτη (epon).
Στον άλλο πίνακα (tbl2) έχεις ένα ID με τύπο δεδομένων "Κείμενο" που δεν έχει καμία σχέση με το επώνυμο που υπάρχει εκεί.

Επιπλέον τα δεδομένα είναι πολύ λίγα για να μπορέσει κανείς να τεστάρει τη λύση που θα σου προτείνει.

Μπορώ μόνο να σου προτείνω τον παρακάτω κώδικα που καλύπτει το ζητούμενο υπό την προϋπόθεση ότι η βάση δεδομένων σου τηρεί κάποιους βασικούς κανόνες:

Κώδικας:
Option Explicit

Private Sub cmdOpenReport_Click()
    Dim strCriteria As String, AndOperator As String
    If Nz(Me.CustomerID) <> 0 Then strCriteria = "CustomerID=" & Me.CustomerID
    If IsDate(Me.dtFrom) And IsDate(Me.dtTo) Then
        If strCriteria <> vbNullString Then AndOperator = " AND "
        strCriteria = strCriteria & AndOperator & "ActionDate Between #" & _
                      Format(Me.dtFrom, "m-d-yyyy") & "# And #" & Format(Me.dtTo, "m-d-yyyy") & "#"
    Else
    End If
    DoCmd.OpenReport "Report1", acViewPreview, , strCriteria
End Sub
Όπου:
  • CustomerID = το σύνθετο πλαίσιο με τα επώνυμα όπως το έχεις στο παράδειγμα σου.
  • dtFrom = πεδίο κειμένου για την ημερομηνία "από"
  • dtTo = πεδίο κειμένου για την ημερομηνία "έως"
  • ActionDate = το πεδίο με την ημερομηνία στην έκθεση.
Λειτουργεί με, ή χωρίς κριτήρια

Καλή συνέχεια!

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών

Τελευταία επεξεργασία από το χρήστη Tasos : 11-08-11 στις 00:10.
Απάντηση με παράθεση