Τρόπος εξαγωγής των πληροφοριών από το φύλλο του Excel με DAO

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.

Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:190195
Αυτό το αρχείο έχει αρχειοθετηθεί. Προσφέρεται “ως έχει” και δεν θα ενημερώνεται πια.
Περίληψη
Το πρόγραμμα οδήγησης ISAM του Excel δεν μετατρέπει δυναμικά τύπους δεδομένων.
Περισσότερες πληροφορίες
Αν υπάρχει μια στήλη με το υπολογιστικό φύλλο του Excel που περιέχει και κείμενο και αριθμούς, το ISAM δεν θα μπορούν να ερμηνεύσουν σωστά ποιο τύπο δεδομένων πρέπει να είναι. Βεβαιωθείτε ότι όλα τα κελιά σε μια στήλη είναι μορφοποιημένα για να τον ίδιο τύπο δεδομένων. Για παράδειγμα, μπορεί να έχετε μετά από δεδομένα σε τέσσερις στήλες σε ένα φύλλο του Excel:
   male   female children teens   11     cc     78       ee   22     xx     33       ff   45     uu     56       oo				

Εάν προσπαθήσετε να διαβάσει τα δεδομένα μέσω του προγράμματος οδήγησης ISAM για ολόκληρο το φύλλο, θα λάβετε τις μηδενικές τιμές για την πρώτη γραμμή. Εάν θέλετε να αποφύγετε κάτι τέτοιο, δημιουργήστε περιοχές: ένα που περιέχει μόνο τις πληροφορίες κεφαλίδας και μια άλλη που περιέχει τα στοιχεία δεδομένων. Για παράδειγμα:
   named range 'myRange1' :   male     female    children     teens   named range 'myRange2' :   11   cc   78   ee   22   xx   33   ff   45   uu   56   oo				

Τώρα μπορείτε να συνδεθείτε σε Excel και να ζητήσει πληροφορίες μόνο από τη συγκεκριμένη επώνυμη περιοχή. Ωστόσο, σε μία περιοχή, μια συγκεκριμένη στήλη μπορεί να περιέχει μόνο έναν τύπο δεδομένων.

Τρόπος δημιουργίας μιας περιοχής

Ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε μια περιοχή:
  1. Για να επισημάνετε τα δεδομένα.
  2. Από τη γραμμή μενού, κάντε κλικ στο κουμπίINSERT, και στη συνέχεια κάντε κλικ στο κουμπίNAME.
  3. Κάντε κλικΟρισμός, και στη συνέχεια κάντε κλικ στο κουμπίΌνομα περιοχής.
ΣΗΜΕΙΩΣΗ:Για ναΑναφέρεται σεπλαίσιο θα αναφέρονται σε επιλεγμένη περιοχή σας. Αυτό θα πρέπει να αναπτυχθεί και να συμπτύξετε κατά την εισαγωγή και διαγραφή δεδομένων.

Για να ανακτήσετε τα δεδομένα σας, χρησιμοποιήστε το όνομα της περιοχής που δημιουργήσατε για το όνομα του πίνακα στη δήλωση επιλογής σας.

Τα βήματα του Excel

  1. Δημιουργήστε το αρχείο του Excel, test.XLS, με τα ακόλουθα δεδομένα στο Φύλλο1:
       excel File : test.xls with the following entries:        male  female    children   teens         11    cc       78           ee         22    xx       33           ff         45    uu       56           oo					
  2. Δημιουργήστε την ονομαστική περιοχή, myRange1 και myRange2, στο φύλλο που περιέχει τα κατάλληλα δεδομένα.
          named range : myRange1      male female children teens      named range  : myRange2      11     cc   78   ee      22     xx   33   ff      45     uu   56   oo					

Τα βήματα της Visual Basic

  1. Δημιουργία νέου τυπικού EXE έργου που ονομάζεται "DAO_EXCEL".
  2. Από τοΤο έργομενού, κάντε κλικ στο κουμπίΑναφορές, και στη συνέχεια επιλέξτε τοΒιβλιοθήκη Microsoft DAO 3.5Πλαίσιο ελέγχου.
  3. Τοποθετήστε ένα στοιχείο CommandButton στη φόρμα.
  4. Επικολλήστε τον ακόλουθο κώδικα στο παράθυρο κώδικα της φόρμας:
          private Sub Command_click1      im dbtmp As DAO.Database      im tblObj As DAO.TableDef      im rs As DAO.Recordset      et dbtmp = OpenDatabase_           ("<complete path>\test.xls", False, True, "Excel 8.0;")      DoEvents      Set rs = dbtmp.OpenRecordset("select * from `myRange2`")      While Not rs.EOF          For x = 0 To rs.Fields.Count - 1              Debug.Print rs.Fields(x).Value          Next          rs.MoveNext      Wend      End Sub      Note the reverse apostrophe "`" while specifying the range      name(myrange2).					
Τα ακόλουθα αποτελέσματα είναι όπως αναμένεται:
  11  cc  78  ee  22  xx  33  ff  45  uu  56  oo				
Αναφορές
Ανατρέξτε στην τεκμηρίωση για τον τρόπο σύνδεσης με το Excel μέσω DAO.Άλλη αναφορά καλό θα προσεχείς ADO-> αναφορά του Excel.

Προειδοποίηση: Αυτό το άρθρο έχει μεταφραστεί αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 190195 - Τελευταία αναθεώρηση: 12/05/2015 09:01:33 - Αναθεώρηση: 2.0

Microsoft Visual Basic 6.0 Professional Edition, Microsoft Visual Basic 5.0 Professional Edition, Microsoft Visual Basic 5.0 Enterprise Edition

  • kbnosurvey kbarchive kbdatabase kbhowto kbiisam kbmt KB190195 KbMtel
Σχόλια