Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Γεια σας,

 

Έχω μια βάση δεδομένων με 65000 γραμμές και 80 στήλες. Από αυτή πρέπει να προκύψει ένα νέο αρχείο, που θα περιέχει 60000 γραμμές (προφανώς με εφαρμογή κάποιου κριτηρίου), με 30 από τις 80 στήλες, σε άλλη σειρά.

 

Ο τρόπος που έχω υλοποιήσει το πρόβλημα μέχρι τώρα είναι ο εξής.

for i = 1 to 65000

if κριτηριο = true

j = j + 1

sheet_new.cells(j, 1) = sheet_old.cells(i, 5)
sheet_new.cells(j, 2) = sheet_old.cells(i, 13)
sheet_new.cells(j, 3) = sheet_old.cells(i, 4)
.
.
.
sheet_new.cells(j, 30) = sheet_old.cells(i, 17)

end if

next i 

Δουλεύει, αλλά παίρνει χρόνο. Τουλάχιστον ένα πεντάλεπτο στο νερό, ίσως και παραπάνω.

Ένας άλλος τρόπος που έχω σκεφτεί, αλλά δεν έχω δοκιμάσει ακόμα, είναι να εφαρμόσω ένα advanced filter με τα κριτήρια μου, και μετά να γίνουν copy paste οι στήλες που θέλω στο νέο αρχείο.

 

Έχετε καμιά ιδέα πιο γρήγορη / αποδοτική?

Δημοσ.

Δεν θυμάμαι πως λέγεται γιατί πάνε κοντά 10 χρόνια από τότε που το χρειάστηκα. Σβήσε την ανανέωση του GUI. Αυτη είναι λογικά που αργεί. Έχει μια μέθοδο που τη σβήνεις και όταν τελειώσεις την επαναφέρεις.


edit

http://www.mrexcel.com/forum/excel-questions/6059-turning-off-gui-update-during-visual-basic-applications-run.html

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...