Excel 2010 / VB- Loop έως ότου δεν βρεθεί κανένα αποτέλεσμα

  • Θέμα
  • Λύση

Θέμα

Προσπαθώ να χειραγωγήσω δεδομένα από ένα πολύ παλιό πρόγραμμα DOS. Έχω μια μακρά μακροεντολή που λειτουργεί καλά μέχρι το τέλος όπου ψάχνει για κάποια συγκεκριμένα λόγια και βρόχους που διαγράφουν τις σειρές με αυτές τις λέξεις σε αυτό μέχρι που δεν μπορεί να βρει τίποτα τότε έρχεται με ένα λάθος και σταματά. Αυτό που προσπαθώ να κάνω είναι να πάρω το σενάριο να συνεχίσει να τρέχει μέχρι να μην βρει πια στιγμές των λέξεων αναζήτησης και στη συνέχεια να μεταφέρει στο επόμενο μέρος του σεναρίου που θέλουμε να γράψουμε.

Εδώ είναι ο βρόχος κωδικοποίησης όπου κολλάει:

 ("B: B") Επιλέξτε Selection.Find (What: = "CE - Parish Currently", Μετά: = ActiveCell, LookIn: = xlFormulas, LookAt: = xlPart, SearchOrder: = xlByRows, SearchDirection: = xlNext, _ MatchCase: = False, SearchFormat: = False) .Ενεργοποίηση 'ActiveCell.Select ActiveCell.Offset .Επιλέξτε την επιλογή.ΕντίστασηRow.Delete Επιλογή.ΕντίστασηRow.DeleteΕπιλογήRemoveRelease.EntireRow.DeleteΕπιλογήRemoveRow.DeleteΕπιλογήRemove.DeleteΕπιλογήRemoteRelease.EntireRow.DeleteΕπιλέξτε.ΕπιλέξτεRo.Διαλέξτε Βρόχο 

Θέλουμε να κάνουμε αυτή την ίδια λειτουργία σε μερικά άλλα σενάρια που γράφουμε και ο προϊστάμενός μου και εγώ είμαστε και οι δύο αρχάριοι σε αυτό, ώστε οποιαδήποτε βοήθεια που μπορεί να είστε σε θέση να προσφέρετε εκτιμάται πολύ!

Λύση

Ο κώδικας λέει

 Πατήστε Ενώ lNum> 10 

Έτσι πότε το lNum γίνεται ποτέ μικρότερο από ή ίσο με 10 για να τερματίσει το βρόχο

Δεδομένου ότι δεν έχετε δώσει όλες τις πληροφορίες, αυτό σκέφτομαι είναι η πιο λογική λύση

 (2) .Βλέπετε (What: = "CE - Parish Currently", _ Μετά: = Κύτταρα (1, 2), LookIn: = xlFormulas, LookAt: = xlPart, xlByRows, _ SearchDirection: = xlNext, _ MatchCase: = False, _ SearchFormat: = Λάθος) Αν το Cell δεν Τώρα τίποτα δεν θα κλείσει το Cell.EntireRow.Delete Loop 

Χάρη στην rizvisa1 για αυτή την συμβουλή.

Προηγούμενο Άρθρο Επόμενο Άρθρο

Οι Καλύτερες Συμβουλές