Καλημέρα Στέλιο!
Το κελί
A1 δηλώνει την τελευταία μη κενή γραμμή της στήλης Β.
Δεν χρειάζεται (παρέλειψα να το διαγράψω) αφού την τελευταία γραμμή τη βρίσκω με χρήση κώδικα
VBA.
To κελί
Β2 φέρει το όνομα
dbFullName και είναι συνδεδεμένο με το
πλαίσιο κειμένου
txtDbFullName (Απαραίτητο χρησιμοποιείται από τον κώδικα). περιέχει τη διαδρομή της ΒΔ.
Τα κελιά A7:Axxx περιέχουν τα ονόματα των πινάκων της ΒΔ που έχει επιλεγεί χρησιμοποιούνται
την πτυσσόμενη λίστα
cbodbTables. (επίσης απαραίτητα).
Μπορείς να χρησιμοποιήσεις όσα agm θέλεις και όσες ημερομηνίες θέλεις ξεκινώντας πάντα από το κελί
Β6.
Αρκεί να μην αφήνεις κενές γραμμές η στήλες.
H περιοχή
rngData που αναφέρεις στην ερώτηση σου προσδιορίζει τις όποιες διαστάσεις του πίνακα της Excel πχ B6:BM1000.
Δεν έχει σχέση με την Access.
Για να μπορείς να εισάγεις δεδομένα από βάσεις δεδομένων με μορφή *.accdb θα χρειαστεί να κάνεις 2 αλλαγές:
1.
Άλλαξε τη γραμμή :
fld.Filters.Add "Access Databases", "*.mdb"
με τη γραμμή:
fld.Filters.Add "Access Databases", "*.mdb;*.accdb"
Για να επιτρέψεις στο διάλογο επιλογής BΔ. να σου εμφανίσει τα αρχεία *.accdb.
2.
Άλλαξε τη γραμμή:
cn.Open "Provider = Microsoft.Jet.OLEDB.4.0; " & "Data Source = '" & dbFileName & "'"
Προσοχή! Αυτή η γραμμή υπάρχει 2 φορές στον κώδικα.
με τη γραμμή:
cn.Open "Provider=Microsoft.ACE.OLEDB.12.0; " & "Data Source = '" & dbFileName & "'"
Καλή συνέχεια!
Φιλικά
Τάσος