Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
Πρόβλημα με ένα query.
Καλημέρα σε όλες/ους έχω ένα πρόβλημα με ένα query. Έχω ένα πινάκα που έχω όλα τα στοιχεία αθλητών το ζητούμενο είναι ότι πρέπει να φτιάξω δυο κουμπιά τα όποια θα τρέχουν απο ένα διαφορετικο query και μετά το αποτέλεσμα θα εκτυπώνετε. Το πρόβλημα είναι πως θα κάνω τα παρακάτω γκρουπ. Δηλαδή δίπλα από τα κιλά να εμφανίζονται και τα ονόματα τον αθλητών. Π.χ 2002 έως 2000 - 33 κιλά Αντώνης τάδε Νίκος Νικόπουλος - 37 . . κ.λπ Κουμπί α Παίδων (2002-2001- 2000) -33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-45 κιλά, 45-49 κιλά, 49-53 κιλά, 53-57 κιλά, 57-61 κιλά, 61-65 κιλά, +65 κιλά. Κορασίδων (2002-2001-2000) -29 κιλά, 29-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-44 κιλά, 44-47 κιλά, 47-51 κιλά, 51-55 κιλά, 55-59 κιλά, +59 κιλά. Έφηβων (1999-1998- 1997) -45 κιλά, 45-48 κιλά, 48-51 κιλά. 51-55 κιλά, 55-59 κιλά, 59-63 κιλά, 63-68 κιλά, 68-73 κιλά, 73-78 κιλά, +78 κιλά. Νεανίδες (1999- 1998-1997) -42 κιλά, 42-44 κιλά, 44-46 κιλά, 46-49 κιλά, 49-52 κιλά, 52-55 κιλά, 55-59 κιλά, 59-63 κιλά, 63-68 κιλά, +68 κιλά. Κουμπί β Πανπαίδων (2003-2004) -27 κιλά, 27-30 κιλά, 30-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-45 κιλά, 45-49 κιλά ,49-53 κιλά, 53-57 κιλά, +57 κιλά. Πανκορασίδων (2003-2004) -27 κιλά, 27-30 κιλά, 30-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-45 κιλά, 45-49 κιλά ,49-53 κιλά, 53-57 κιλά, +57 κιλά Πανπαίδων (2005-2006) -21 κιλά, 21-24 κιλά, 24-27 κιλά, 27-30 κιλά, 30-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-45 κιλά, 45-49 κιλά +49 κιλά. Πανκορασίδων (2005-2006) -21 κιλά, 21-24 κιλά, 24-27 κιλά, 27-30 κιλά, 30-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-45 κιλά, 45-49 κιλά +49 κιλά Πανπαίδων (2007-2008) -17 κιλά, 17-20 κιλά, 20-23 κιλά, 23-26 κιλά, 26-29 κιλά, 29-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-44 κιλά, +44 κιλά. Πανκορασίδων (2007-2008) -17 κιλά, 17-20 κιλά, 20-23 κιλά, 23-26 κιλά, 26-29 κιλά, 29-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-44 κιλά, +44 κιλά. Πανπαίδων (2009) -17 κιλά, 17-20 κιλά, 20-23 κιλά, 23-26 κιλά, 26-29 κιλά, 29-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-44 κιλά, +44 κιλά. Πανκορασίδων (2009) -17 κιλά, 17-20 κιλά, 20-23 κιλά, 23-26 κιλά, 26-29 κιλά, 29-33 κιλά, 33-37 κιλά, 37-41 κιλά, 41-44 κιλά, +44 κιλά. ευχαριστω |
#2
| |||
| |||
Καλημερα, το πρωτο κουμπι θα καλει-τρεχει τις 4 πρώτες query και το αλλο κουμπι τις υπόλοιπες. Στην πρωτη query του πρωτου κουμπιου εχουμε σαν υποχρεωτικο κριτηριο την κατηγορία (π.χ παιδων ) και πολλαπλο κριτηριο τα έτη (π.χ 2001, 2002) με επίσης πολλαπλο κριτηριο τα κιλα (33, 35 κλπ) Όταν τρεχουμε την query φροντιζουμε αυτή να γραψει όλα τα δεδομενα σε ένα προσωρινο πινακα. Ακριβως ετσι φτιαχνουμε και τις υπολοιπες query. Οποτε μετα μπορούμε να παρουμε τα στοιχεια από τον προσωρινο πινακα να τα διαμορφώσουμε και να τα στειλουμε σε μια αναφορα (report) προς εμφανιση. Την επομενη φορα που θα παμε να εκτελέσουμε το κουμπι Α, πρεπει πρωτα να σβησούμε όλα τα δεδομενα του προσωρινου πίνακα πριν στειλουμε καινουργια για αποφυγη λαθων. |
#3
| |||
| |||
Κωστα ευχαριστω για τον κοπο αλλα ειναι και το θεμα αγορια-κοριτσια δεν ειναι μονο η ηλικια αυτο ειναι που με μπερδευει
|
#4
| |||
| |||
Γιώργο καλημέρα Στις εκθέσεις μπορείς να βάλεις περισσότερα πεδία ομαδοποίησης. Αν ανεβάσεις μια βάση με τον πίνακα που περιέχει τα δεδομένα θα πάρεις πιο αναλυτική απάντηση. |
#5
| |||
| |||
Καλησπέρα στην παρέα Η παρακάτω συνάρτηση, με βάση το φύλο των αθλητών, το έτος γέννησης και το βάρος τους, κατατάσσει τους αθλητές σε κατηγορίες σύμφωνα με το ζητούμενο. Κώδικας: Public Function CategoriesWeight(Sex As Variant, Etos As Variant, Baros As Variant) As String 'Sex = "A" (ελληνικό)για αγόρι και "Κ" για κορίτσι 'Etos = το έτος γέννησης 'Baros = το βάρος του αθλητή Dim i As Long, j As Long, c As Long Dim x(1 To 7) As Variant Sex = Nz(Sex, ""): Etos = Nz(Etos, 0): Baros = Nz(Baros, 0) x(1) = Array(33, 37, 41, 45, 49, 53, 57, 61, 65) x(2) = Array(29, 33, 37, 41, 44, 47, 51, 55, 59) x(3) = Array(45, 48, 51, 55, 59, 63, 68, 73, 78) x(4) = Array(42, 44, 46, 49, 52, 55, 59, 63, 68) '---------------------------------------------- x(5) = Array(27, 30, 33, 37, 41, 45, 49, 53, 57) x(6) = Array(21, 24, 27, 30, 33, 37, 41, 45, 49) x(7) = Array(17, 20, 23, 26, 29, 33, 37, 41, 44) 'Η διάκριση θα έπρεπε να γίνει με βάση την ηλικία του αθλητή. 'Έγινε όμως με βάση το έτος γέννησης, σύμφωνα με το ζητούμενο Select Case Etos Case 2002, 2001, 2000 If Sex = "Α" Then c = 1 Else c = 2 Case 1999, 1998, 1997 If Sex = "Α" Then c = 3 Else c = 4 Case 2003, 2004 c = 5 Case 2005, 2006 c = 6 Case 2007, 2008, 2009 c = 7 Case Else Exit Function End Select For i = 0 To UBound(x(c)) If Baros < x(c)(0) Then CategoriesWeight = "-" & x(c)(i) Exit Function ElseIf Baros >= x(c)(UBound(x(c))) Then CategoriesWeight = "+" & x(c)(UBound(x(c))) Else If Baros >= x(c)(i) And Baros < x(c)(i + 1) Then 'Σύμφωνα με τα μαθηματικά το σύμβολο [ δείχνει ότι το κάτω όριο 'περιλαμβάνεται, ενώ το ) δείχνει ότι το πάνω όριο δεν περιλαμβάνεται CategoriesWeight = "[" & CStr(x(c)(i)) & ", " & CStr(x(c)(i + 1)) & ")" Exit Function End If End If Next End Function 1) Οι 12 περιπτώσεις, επειδή κάποιες ήταν όμοιες, περιορίστηκαν σε 7. 2) Στα διαστήματα των κατηγοριών η ελάχιστη τιμή περιλαμβάνεται, ενώ η μέγιστη όχι (ανήκει στην επόμενη κατηγορία). Για παράδειγμα, αν 33<=Baros<37, ο αθλητής ανήκει στην κατηγορία: [33, 37). Ενώ αν Baros=37 ανήκει στην κατηγορία: [37,41) Στην επισυναπτόμενη ΒΔ, μπορούμε να δούμε ένα παράδειγμα χρήσης της συνάρτησης στο ερώτημα Categories Φιλικά/Γιώργος ΥΓ. Γιώργο, κάνε δοκιμές μήπως κάτι μου διέφυγε |
#6
| |||
| |||
Γιώργο ενα ευχαριστω ειναι λιγο απλα υποκλίνομαι
|
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[Γενικά] Πρόβλημα εισαγωγής δεδομένων σε κελιά του Excel και πρόβλημα με συνάρτηση | ΣΟΦΙΑΖΩΤΟΥ | Excel - Ερωτήσεις / Απαντήσεις | 0 | 02-12-13 14:14 |
Βελτιστοποίηση Query σε Access 2007 | Dafnh0106 | Access - Ερωτήσεις / Απαντήσεις | 6 | 07-03-13 10:43 |
Query in a multiple value combo box in Access | Zoe Forte | Access - Ερωτήσεις / Απαντήσεις | 11 | 08-05-12 01:39 |
Προβλημα με crosstab query | dionisis | Access - Ερωτήσεις / Απαντήσεις | 4 | 18-03-11 09:11 |
Η ώρα είναι 09:24.