| Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
![]() |
| | Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
|
#1
| |||
| |||
|
Καλημέρα σε όλους Στην παραδειγματική βάση δεδομένων που ανέβασα υπάρχει ένα πεδίο το οποίο μάς δίνει το μέγεθος τής τρέχουσας βάσης δεδομένων (σε καθαρό αριθμό). Πως μπορούμε να συμπληρώσουμε τον κώδικα έτσι ώστε να μάς δίνει ταυτόχρονα και τη μονάδα μέτρησης (Mb, Gb)? Σας ευχαριστώ εκ των προτέρων |
|
#2
| ||||
| ||||
|
Καλημέρα σε όλους! Δημήτρη σε μια λειτουργική μονάδα (Module) πρόσθεσε τον παρακάτω κώδικα: Κώδικας: Public Function GetFileLen(ByVal filePath As String) As String
Dim FileLen As Double
FileLen = FileLen(filePath)
Select Case FileLen
Case Is >= 1099511627776#
GetFileLen = FormatNumber(FileLen / 1099511627776#, 2) & " TB"
Case 1073741824 To 1099511627775#
GetFileLen = FormatNumber(FileLen / 1073741824, 2) & " GB"
Case 1048576 To 1073741823
GetFileLen = FormatNumber(FileLen / 1048576, 2) & " MB"
Case 1024 To 1048575
GetFileLen = FormatNumber(FileLen / 1024, 2) & " KB"
Case 0 To 1023
GetFileLen = FormatNumber(FileLen, 2) & " bytes"
Case Else
GetFileLen = vbNullString
End Select
End Function
=GetFileLen([filePath]) όπου [filePath] είναι το πεδίο με τη διαδρομή του αρχείου. Καλή συνέχεια! Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
|
#3
| |||
| |||
|
Καλησπέρα σε όλους Τάσο, θερμές ευχαριστίες για την ανεκτίμητη βοήθειά σου! Αν έχεις την καλοσύνη και έχεις χρόνο, θα ήθελα να μου πεις πως μπορεί, στη Function που παραθέτεις, να μετατραπεί το FileLen(filePath) σε FileLen(CurrentDb.Name). Δηλαδή, η Function να ισχύει για τρέχουσα βάση δεδομένων... Έκανα κάποιες δοκιμές αλλά δεν βλέπω να τα καταφέρνω. Να είσαι καλά και καλή συνέχεια. |
|
#4
| ||||
| ||||
|
Δημήτρη μου δοκίμασε: Κώδικας: Public Function GetFileLen() As String
Dim filePath As String
Dim filesize As Double
filePath = CurrentProject.FullName
''Αν πρόκειται για συνδεμένη βάση (Backend) τότε χρησιμοποιούμε:
'filePath = CurrentDb.TableDefs("tblFields").Connect
'filePath = Mid(filePath, InStr(1, filePath, ";DATABASE=") + 10)
'tblFields = το όνομα ενός από τους συνδεμένους πίνακες στην βάση παρασκηνίου.
filesize = FileLen(filePath)
Select Case filesize
Case Is >= 1099511627776#
GetFileLen = FormatNumber(filesize / 1099511627776#, 2) & " TB"
Case 1073741824 To 1099511627775#
GetFileLen = FormatNumber(filesize / 1073741824, 2) & " GB"
Case 1048576 To 1073741823
GetFileLen = FormatNumber(filesize / 1048576, 2) & " MB"
Case 1024 To 1048575
GetFileLen = FormatNumber(filesize / 1024, 2) & " KB"
Case 0 To 1023
GetFileLen = FormatNumber(filesize, 2) & " bytes"
Case Else
GetFileLen = vbNullString
End Select
End Function
Καλή συνέχεια! Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
|
#5
| |||
| |||
|
Γεια σας Τάσο, σε υπερευχαριστώ για την άμεση απάντηση! Έκανα προσαρμογή στη βάση μου και λειτουργεί άριστα. Είμαι πραγματικά υπόχρεος. Καλή συνέχεια... |
![]() |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
| ||||
| Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
| Σχεδιασμός Βάσης Δεδομένων | maria_ | Access - Ερωτήσεις / Απαντήσεις | 14 | 25-08-16 10:21 |
| [ Φόρμες ] Χρονόμετρο αντίστροφης μέτρησης | dimitris p | Access - Ερωτήσεις / Απαντήσεις | 5 | 29-11-12 13:09 |
| Ασφάλεια Βάσης Δεδομένων | jimvasiloudis | Access - Ερωτήσεις / Απαντήσεις | 11 | 03-02-12 09:13 |
| Κλείδωμα Βάσης δεδομένων | Ms-Office-Development Team | Access samples - Χρήσιμα αρχεία & παραδείγματα | 0 | 08-08-10 14:42 |
| [ Ερωτήματα ] Ερώτημα μέτρησης ανά όνομα ημέρας | enikolo | Access - Ερωτήσεις / Απαντήσεις | 21 | 19-05-10 18:58 |
Η ώρα είναι 00:45.


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

