Θέμα: VBA Excel 2010 Error 91

Εμφάνιση ενός μόνο μηνύματος
  #2  
Παλιά 30-10-11, 01:36
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.035
Προεπιλογή

Καλημέρα Θανάση!
Επειδή τα Activate που περιέχονται στον κώδικα δεν είναι ότι γρηγορότερο,
σου προτείνω τον παρακάτω κώδικα που χρωματίζει τα κελιά που περιέχουν το κριτήριο αναζήτησης.

Κώδικας:
Option Explicit

Sub ColorFoundCells()
    Dim SearchString, FirstAddress As String, _
            lColor As Long, OldColor As Long, rng As Range
    SearchString = Application.InputBox("Enter text to search", Type:=2)
    If SearchString = False Then Exit Sub
    Set rng = Cells.Find(SearchString, LookIn:=xlValues)
    If Not rng Is Nothing Then
        FirstAddress = rng.Address
        OldColor = IIf(ActiveCell.Interior.ColorIndex = xlNone, _
                xlNone, ActiveCell.Interior.Color)
        If Application.Dialogs(xlDialogPatterns).Show Then
            lColor = ActiveCell.Interior.Color
            ActiveCell.Interior.Color = OldColor
        Else
            Exit Sub
        End If
    Else
        MsgBox "Search string not found!", vbInformation
        Exit Sub
    End If
    Do
        rng.Interior.Color = lColor
        Set rng = Cells.FindNext(rng)
    Loop While Not rng Is Nothing And rng.Address <> FirstAddress
End Sub
Καλή συνέχεια!


Το σφάλμα 91 το αποφεύγεις με τη γραμμή: If Not rng Is Nothing Then .... μετά από την αναζήτηση (Find ή FindNext).

Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών

Τελευταία επεξεργασία από το χρήστη Tasos : 30-10-11 στις 01:54.
Απάντηση με παράθεση