Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   [ Εκθέσεις ] Πρόβλημα με ετικέτες (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/1165-problima-me-etiketes.html)

ΚΩΣΤΑΣ2 22-05-11 14:39

Πρόβλημα με ετικέτες
 
Καλησπέρα σε όλους Έχω ένα πρόβλημα με τις ετικέτες
έχω δημιουργήσει ετικέτες με τον οδηγό.θα ήθελα να περνω 2 -3 φορες την ίδια ετικέτα:thanks:

Meteora 22-05-11 18:40

Καλησπέρα

Όταν είσαι στο παράθυρο εκτύπωσης, εκεί μπορείς να προσδιορίσεις τον αριθμό των ετικετών που θέλεις. (κουπί Office ... εκτύπωση ... ).
Αρκεί αυτή η πληροφορία;

Με εκτίμηση

Νίκος Δ.

ΚΩΣΤΑΣ2 22-05-11 22:09

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

ΚΩΣΤΑΣ2 22-05-11 23:13

1 Συνημμένο(α)
Η βάση μου είναι

Tasos 23-05-11 09:08

Καλημέρα σε όλους!

Αγαπητέ Κώστα, η πιο απλή μέθοδος (προϋποθέτει VBA) είναι να ελέγχουμε την ιδιότητα "NextRecord" της έκθεσης στο συμβάν "OnPrint" του τμήματος Λεπτομέρεια (Detail).

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


Αν η έκθεση ανοίγει με κουμπί τότε ο (παραδειγματικός) κώδικας πίσω από το κουμπί θα είναι:

Κώδικας:

Private Sub cmdOpenLabelsReport_Click()
On Error GoTo ErrH
    DoCmd.OpenReport "RepeatRecords", acPreview, , , , Me.txtNumberOfRecordRepeats
    ' txtNumberOfRecordRepeats = ένα μή δεσμευμένο πεδίο στη φόρμα όπου ο χρήστης θα ορίζει τον αριθμό επαναλήψεων.
Exit_Sub:
    Exit Sub
ErrH:
    MsgBox Err.Description
    Resume Exit_Sub
End Sub

Στη λειτουργική μονάδα της έκθεσης περνάμε τον παρακάτω κώδικα:

Κώδικας:

Option Compare Database
Option Explicit

Private CopiesCount As Integer, IntCounter As Integer

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer) ' Detail = το όνομα του τμήματος "Λεπτομέρεια"
    IntCounter = IntCounter + 1
    Me.NextRecord = IntCounter = CopiesCount
    If Me.NextRecord Then IntCounter = 0
End Sub

Private Sub Report_Open(Cancel As Integer)
    On Error Resume Next
    CopiesCount = Nz(Me.OpenArgs)
    If CopiesCount = 0 Then CopiesCount = _
    CInt(InputBox("΄Δώστε τον αριθμό επαναλαμβανόμενων εγγραφών", , 3))
    If CopiesCount = 0 Then CopiesCount = 1
End Sub

Μια άλλη μέθοδος είναι να δημιουργήσουμε ένα ερώτημα που να περιλαμβάνει τις εγγραφές με περισσότερες επαναλήψεις.

Παράδειγμα για 3 επαναλήψεις:

Όνομα Ερωτήματος: RepeatedRecords

Έστω ότι τα δεδομένα πηγάζουν από τον πίνακα tblCustomers.

Ο κώδικας SQL του ερωτήματος:

Κώδικας:

  SELECT tblCustomers.*  as tmp1
  FROM tblCustomers
  UNION ALL
  SELECT tblCustomers.*  as tmp2
  FROM tblCustomers
  UNION ALL
  SELECT 
  tblCustomers.*  as tmp3
  FROM tblCustomers
  ORDER BY tblCustomers.ID;

Ως προέλευση εγγραφών της έκθεσης ορίζουμε RepeatedRecords

Φιλικά

Τάσος




Η ώρα είναι 15:36.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2