| Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
![]() |
| | Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
|
#1
| |||
| |||
|
Γεια σας. Θα ήθελα μια βοήθεια στο εξής αν γίνεται. Πως μπορώ σε μια έκθεση να τυπώσω δύο στήλες πεδία απο πίνακες που δεν συνδέονται μεταξύ τους πχ 1η στήλη "πεδίο1"από πίνακα Α και 2η στήλη "πεδίο2" από πίνακα Β στην ίδια σελίδα. Φιλικά Δημήτρης |
|
#2
| ||||
| ||||
|
Καλησπέρα Φτιάξε με κενή έκθεση με το όνομα ΑΛΦΑ. Στον τομέα ΄Λεπτομέρειες' αυτής πέρασε(*) άλλες δύο εκθέσεις δίπλα-δίπλα ή την μια κάτω από την άλλη. Η μια εξ αυτων να περιέχει το πεδίο του ενός πίνακα και η άλλη το πεδίο του άλλου πίνακα. (*) Φτιάξε τις δυο θυγατρικές εκθέσεις και μετά την κενή την οποία έδωσα το όνομα ΑΛΦΑ. Φέρε την ΑΛΦΑ σε περιβάλλον σχεδίασης και σύρε τις δυο θυγατρικές μέσα στην ΑΛΦΑ. Με εκτίμηση Νίκος Δ. |
|
#3
| |||
| |||
|
Καλησπέρα Δημήτρη, θα μπορούσες να στηρίξεις την έκθεσή σου σε ένα ερώτημα που θα περιέχει όλα τα πεδία των δύο πινάκων, που χρειάζεσαι. Επειδή οι πίνακες δε συνδέονται το ερώτημα θα μας δώσει όλους τους συνδυασμούς κάθε γραμμής του πρώτου πίνακα με όλες τις γραμμές του δεύτερου πίνακα. Έτσι αν οι πίνακες έχουν μ και ν γραμμές αντίστοιχα, το ερώτημα θα δώσει μΧν (γινόμενο) γραμμές και τόσες θα εμφανιστούν στην έκθεση. Το ερώτημα σε προβολή SQL θα έχει τη μορφή: Κώδικας: SELECT tableA.*, tableB.* FROM tableA, tableB; Φιλικά/Γιώργος |
|
#4
| |||
| |||
|
Σας ευχαριστώ για την άμεση ανταπόκριση. Την λύση του Γιώργου την ήξερα και δεν εξυπηρετεί. Στην ουσία ήθελα δύο ενεξάρτητες εκθέσεις που να εμφανίζονται στην ίδια έκθεση. Με κάλυψε πλήρως η πρόταση του Νίκου. Φιλικά Δημήτρης |
|
#5
| |||
| |||
|
Καλημέρα στην παρέα Στο πρόβλημα της εμφάνισης σε μία έκθεση στοιχείων από δύο πίνακες που δεν ενώνονται, το οποίο έθεσε ο Δημήτρης (Dimmag), δόθηκε από το φίλο μου Νίκο (Meteora) μια απλή και χωρίς κώδικα λύση. Δουλεύοντας για κάποια λύση με κώδικα σκέφτηκα δύο τρόπους: 1) Στο συμβάν με το άνοιγμα της έκθεσης (Open) να δημιουργείται ένας νέος πίνακας (Test) που θα συγκεντρώνει τα στοιχεία των δύο πινάκων (tablaA, tableB) και θα αποτελεί την προέλευση εγγραφών της έκθεσης. Τη λύση αυτή την υλοποίησα στην έκθεση «rptTableA_TableB», στη ΒΔ που επισυνάπτω. 2) Στο συμβάν με το άνοιγμα της έκθεσης (Open) να τίθεται η προέλευση εγγραφών της έκθεσης στον πίνακα που έχει τις περισσότερες εγγραφές (πχ TableA) και η προέλευση του στοιχείου ελέγχου που ανήκει στον άλλο πίνακα (πχ fieldB του πίνακα tableB) σε μία κατάλληλη συνάρτηση. Η προσπάθεια αυτή, απέτυχε παταγωδώς και φαίνεται στην έκθεση «rptTableA_TableB2». Ενώ όταν ο πίνακας «tableB» έχει περισσότερες εγγραφές από τον «tableΑ» δίνει σωστά αποτελέσματα όταν συμβαίνει το αντίθετο βγάζει μήνυμα λάθους. Παρά τις προσπάθειες «κόλλησα» και δεν μπόρεσα να διορθώσω το λάθος. Παραθέτω τον κώδικα, με κάποια σχόλια, και παρακαλώ τους φίλους του φόρουμ να τον μελετήσουν και να βοηθήσουν στη διόρθωση. Κώδικας: Option Compare Database
Option Explicit
Dim x As Long
Private Sub Report_Open(Cancel As Integer)
On Error GoTo Error_Trap
If DCount("*", "tableA") >= DCount("*", "tableB") Then
Me!fieldB.ControlSource = "=SetB([fieldA])"
Me.RecordSource = "tableA"
Else
Me!fieldA.ControlSource = "=SetA([fieldB])"
Me.RecordSource = "tableB"
End If
Exit Sub
Error_Trap:
MsgBox Err.Number & " " & Err.Description
End Sub
Public Function SetA(m As Variant)
'Ο κώδικας λειτουργεί σωστά
With CurrentDb.OpenRecordset("tableA")
'Επειδή ο πίνακας tableA έχει λίγότερες εγγραφές από τον tableB
'κάποια στιγμή ή .move x θα προκαλέσει λάθος
On Error Resume Next
.Move x
If Err = 0 Then
SetA = !fieldA
Else
SetA = ""
Err.Clear
End If
On Error GoTo 0
x = x + 1
End With
End Function
Public Function SetB(m As Variant)
'Δε λειτουργεί σωστά. Πρόσθεσα παγίδευση σφάλματος
' για να φανεί το είδος του σφάλματος
On Error GoTo TrapError
With CurrentDb.OpenRecordset("tableB")
'On Error Resume Next
.Move x
If Err = 0 Then
SetB = !fieldB
Else
SetB = ""
Err.Clear
End If
'On Error GoTo 0
x = x + 1
End With
Exit Function
TrapError:
MsgBox Err.Number & " " & Err.Description
End Function
|
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
| Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
| [ Ερωτήματα ] ερώτημα από δυο διαφορετικούς πίνακες | vraxnakisg | Access - Ερωτήσεις / Απαντήσεις | 6 | 04-01-16 14:21 |
| [Γενικά] Διπλότυπη εμφάνιση Unicode σε διαφορετικούς χαρακτήρες γραμμάτων | alex | Excel - Ερωτήσεις / Απαντήσεις | 0 | 09-05-14 08:27 |
| Πίνακες τιμών | sakis | Access - Ερωτήσεις / Απαντήσεις | 5 | 05-01-12 18:13 |
| Μία φόρμα ...δύο πίνακες | dimnot | Access - Ερωτήσεις / Απαντήσεις | 2 | 24-08-11 20:48 |
Η ώρα είναι 18:26.


Αλλαγή σε γραμμικό τρόπο

