Ανανέωση ιστοσελίδας

Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια!

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 07-05-11, 16:13
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Προεπιλογή Πρόβλημα σε κώδικα

Γεια σας αντιμετωπίζο το εξής πρόβλημα.
Μέσα από ένα ερώτημα στέλνω τα δεδομένα σε ένα αρχείο εχελ με όνομα RUD και στην συνέχεια αφού γίνει κάποια αυτόματη επεξεργασία σε ένα άλλο φύλλο του εχελ (RUD) τα ξαναφέρνω στην acces 2007 σε ένα πίνακα με όνομα RUD.
Οταν στο αρχειο excel σβήσω τα δεδομένα απο το φυλλο 1 τοτε ο κώδικας δουλεύει κανονικα
Οταν όμως ξανατρέξω τον κώδικα μού χτυπάει ότ δεν ειναι δυνατή η επέκταση της περιοχής.
Το παράδοξο είναι πως στο αρχείο excel μετα την εκτέλεση απο το Α1 έως Α63400 περιπου μου σβήνει τα δεδομένα ενώ απο κεί και κάτω οχι.
Το excel δεν το ανοίγω καθόλου χειροκίνητα.Σας ανεβάζω τον κώδικα γιατι το αρχείο excel και το αρχείο της acces που ανεβάζω μαζι είνα σε μορφή rar.
Πρέπει να αποσυμπιεστη στο φάκελο MIDAS STO C:\
Option Compare Database
Option Explicit

Function CalculateInXL()
Dim XLFileName As String, xl As Object, wb As Object
On Error GoTo ExportErr
XLFileName = "C:\MIDAS\RUD.xlsX"
DoCmd.TransferSpreadsheet _
TransferType:=acExport, _
SpreadSheetType:=acSpreadsheetTypeExcel8, _
TableName:="HELP", _
FileName:=XLFileName, _
HasFieldNames:=True
ExportErr:
If Err Then
MsgBox Err.Description
Exit Function
End If
On Error GoTo XLErr
Set xl = CreateObject("Excel.Application")
Set wb = xl.Workbooks.Open(XLFileName)
If xl.Calculation <> -4105 Then xl.Calculatefull
wb.Save
wb.Close False
xl.Quit
Set xl = Nothing
XLErr:
If Err Then
On Error Resume Next
If Not xl Is Nothing Then xl.Visible = True
If Not wb Is Nothing Then Set wb = Nothing
If Not xl Is Nothing Then Set xl = Nothing
MsgBox Err.Description
Exit Function
End If
On Error GoTo ImportErr
DoCmd.TransferSpreadsheet _
TransferType:=acImport, _
SpreadSheetType:=acSpreadsheetTypeExcel8, _
TableName:="RUD", _
FileName:=XLFileName, _
HasFieldNames:=True, _
Range:="RUD!A1:R160000"
DoCmd.RunSQL "DELETE * FROM RUD WHERE RUD.[ROUND] Is Null OR RUD.[ROUND]=0;"
DoCmd.SetWarnings True
MsgBox "Finished!!", vbInformation, "Transfer to EXCEL"
ImportErr:
If Err Then MsgBox Err.Description
End Function
Συνημμένα Αρχεία
Τύπος Αρχείου: zip MIDAS.zip (3,50 MB, 10 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 08-05-11, 02:37
Το avatar του χρήστη Tasos
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.011
Προεπιλογή

Αγαπητέ Δημήτρη,
για να αποφύγουμε περιορισμούς και άλλα προβλήματα που εμφανίζονται σε διαδικασίες
μεταφοράς δεδομένων ανάμεσα σε Excel και Access αλλά και να βελτιώσουμε την ταχύτητα μεταφοράς τους, είναι προτιμότερο να συνδέσουμε
τον πίνακα tblHelp (τον δημιουργούμε αυτόματα με εκτέλεση SQL και περιέχει τα δεδομένα
του ερωτήματος HELP) σε φύλλο αρχείου *.xlsb της Excel.

Κατόπιν ανοίγουμε προγραμματιστικά την Excel για να ανανεώσει τα εξωτερικά δεδομένα και
να τα υπολογίσει.

Στο επόμενο βήμα εισάγουμε το φύλλο της Excel στη βάση με χρήση της εντολής DoCmd.RunSavedImportExport "Import-RUD"
όπου "Import-RUD" είναι το όνομα της αποθηκευμένης εισαγωγής που περιέχει ότι χρειάζεται
για να εισαχθεί το φύλλο RUD με επιτυχία.

Αποσυμπίεσε τα 2 παραδειγματικά αρχεία του συνημμένου στο C:\MIDAS και κάνε τις δοκιμές σου.

Καλή συνέχεια!

Τάσος
Συνημμένα Αρχεία
Τύπος Αρχείου: zip MIDAS.zip (1.018,3 KB, 33 εμφανίσεις)
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών

Τελευταία επεξεργασία από το χρήστη Tasos : 08-05-11 στις 12:07. Αιτία: Τροποποίηση Μορφής Αριθμιτικών πεδίων σε πίνακα
Απάντηση με παράθεση
  #3  
Παλιά 10-05-11, 15:50
Όνομα: ΔΗΜΗΤΡΗΣ
Έκδοση λογισμικού Office: Ms-Office 2007
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 19-02-2011
Μηνύματα: 97
Προεπιλογή Ευχαριστώ

Όπως πάντα σε ότι έχω ρωτήσει απόλυτα σωστός ευχαριστώ.
Απάντηση με παράθεση
Απάντηση στο θέμα


Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[VBA] Πρόβλημα με error σε κώδικα kolekas Excel - Ερωτήσεις / Απαντήσεις 3 11-05-16 20:14
[VBA] Πρόβλημα σε κώδικα xristos Excel - Ερωτήσεις / Απαντήσεις 5 16-03-16 18:43
Πρόβλημα σε κώδικα vba ΑΛΕΞΙΑ Access - Ερωτήσεις / Απαντήσεις 1 12-10-15 17:05
Πρόβλημα με μεγάλο κώδικα...!!!! γιώργοςΚ Access - Ερωτήσεις / Απαντήσεις 3 09-05-15 14:13
Πρόβλημα με κώδικα VBA γιώργοςΚ Access - Ερωτήσεις / Απαντήσεις 17 08-10-14 17:04


Η ώρα είναι 08:05.