
30-10-11, 01:36
|
 | Διαχειριστής Όνομα: Τάσος Φιλοξενιδης Έκδοση λογισμικού 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.
|