Bonjour à Tous,
La feuille sur laquelle je souhaite faire fonctionner cette macro se compose ainsi
L1 à 10 : Texte de présentation
L11 : Titre de mes colonnes A à M
En colonne C le titre est "CODE POSTAL"
La plage sur laquelle cette macro doit fonctionner est A12:M2012
La macro ci-dessous fonctionne très bien si on donne à InputBox ex: 75001 ou 45100.
Je voudrais pouvoir ne saisir que le numéro du département ex: 75 ou 45 et ensuite avoir le même scénario.
Merci de votre aide
Lenul

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Sub SelectionCode()
Application.ScreenUpdating = False
Dim SelectionCode
Dim Colonne As Range
Dim LastLig As Long
 
With Sheets("Prospects")
    SelectionCode = InputBox("Entrez le CODE POSTAL")
    If SelectionCode <> "" Then
        LastLig = .Cells(Rows.Count, "C").End(xlUp).Row
        Set Colonne = .Range("C12:C" & LastLig).Find(What:=SelectionCode, LookIn:=xlValues, lookat:=xlWhole)
        If Colonne Is Nothing Then
            MsgBox "désolé ce CODE n'existe pas"
        Else
            With .Range("C11:C" & LastLig)
                .AutoFilter
                .AutoFilter field:=1, Criteria1:=SelectionCode
            End With
            OuvrirExtrait
            .Range("A12:M" & LastLig).SpecialCells(xlCellTypeVisible).Copy Sheets("Extrait").Range("A12")
            .Range("C11:C" & LastLig).AutoFilter
            End If
        Set Colonne = Nothing
    End If
End With
Range("a11").Select
Sheets("Extrait").Select
Range("a11").Select
Application.ScreenUpdating = True
End Sub