Problème sur macro de recherche

Bonjour, j'utilise une textebox qui a pour code de masquer les lignes qui ne contiennent pas le mot tapé dans la textebox. Voici mon code :

Private Sub TextBox1_Change()
Application.ScreenUpdating = False

Dim plage As Range
Dim cell As Range
Set plage = Range("A4:A310")

For Each cell In plage
    cell.EntireRow.Hidden = True
    If InStr(UCase(cell), UCase(TextBox1)) Then
        cell.EntireRow.Hidden = False
    End If
Next

Application.ScreenUpdating = True

End Sub

Le problème est que cette macro ne recherche que dans la colonne A même si je remplace Range("A4:A310")

par Range("A4:G310").

Comment faire pour que ma macro recherche dans les colonnes A à G et pas uniquement dans A?

Bonjour

Bizarre ta macro

La recherche se fait dans toute la plage

Pour t'en convaincre insère cette ligne après For Each cell In plage

Debug.Print Cell.Address,

Sinon avec ta macro tu devrais masquer toute la zone ensuite tester juste la dernière colonne (G) pour savoir s'il faut la démasquer

un exemple si j'ai bien saisi

Private Sub TextBox1_Change()
Dim Plage As Range
Dim Cell As Range

  Set Plage = Range("G4:G310")
  Application.ScreenUpdating = False
  Rows("4:310").Hidden = True

  For Each Cell In Plage
    If InStr(UCase(Cell), UCase(TextBox1)) Then
      Cell.EntireRow.Hidden = False
    End If
  Next

  Application.ScreenUpdating = True

End Sub

Merci mais c'est toujours pareil, cela ne prend en compte que la première colonne je comprend pas du tout pourquoi.

-- 30 Déc 2010, 11:41 --

Quand je fais Set plage = Range("A4:G310") il cherche QUE dans la colonne G je comprend pas!!

-- 30 Déc 2010, 11:56 --

J'ai rien dis ça marche nikel merciiiiiiiiiiiiiii!

Rechercher des sujets similaires à "probleme macro recherche"