[Macro Excel]Recherche selon condition

Résolu/Fermé
Inglapaxa Messages postés 2 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 24 août 2007 - 23 août 2007 à 20:30
Inglapaxa Messages postés 2 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 24 août 2007 - 24 août 2007 à 12:17
Bonjour,

Je cherche depuis ce matin mais je ne trouve pas.

Voila j'ai un fichier excel avec trois onglet :

1 : Mes données a rechercher
2 : Ma base de donnée
3 : Le resultat de ma recherche

Donc dans l'onglet 1 trois valeur en case B1/B2/B3
Dans l'onglet deux deux collones :

A: Une des trois valeurs que je recherche
B: La valeur que je veux afficher

Dans le troisiéme onglet je souhaite créer trois collone

A: Les valeurs de ma recherche pour 'Onglet1'B1
B: Les valeurs de ma recherche pour 'Onglet1'B2
C: Les valeurs de ma recherche pour 'Onglet1'B3

Et que la macro tourne jusqu'a une ligne vide.

Le but et de pouvoir créer un fichier de référence ou l'on rentre nos valeurs chercher dans l'onglet 1, la base de recherche dans l'onglet 2 et l'affichage dans l'onglet 3.

Je sais le faire avec une fonction SI, mais je souhaiterais automatisé pour ne plus avoir a vérifié sur combien de ligne la copié.

Merci de toute l'aide que vous m'apportez au fils du temps.
A voir également:

1 réponse

Inglapaxa Messages postés 2 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 24 août 2007
24 août 2007 à 12:17
Sub RSSI()
'

Application.ScreenUpdating = False

'Workbook.Add

'Def variable

Sheets("@MAC").Select
    
    Range("C3").Select
    APMAC1 = ActiveCell.Value
    Range("C4").Select
    APMAC2 = ActiveCell.Value
    Range("C5").Select
    APMAC3 = ActiveCell.Value
    Range("C6").Select
    APMAC4 = ActiveCell.Value
    Range("C7").Select
    APMAC5 = ActiveCell.Value
    Range("C8").Select
    APMAC6 = ActiveCell.Value
    
Sheets("RSSI").Select
    ActiveSheet.Unprotect

Cells.Select
    Selection.ClearContents

Range("A1").Select
ActiveCell.Value = "AP1"

Range("B1").Select
ActiveCell.Value = "AP2"

Range("C1").Select
ActiveCell.Value = "AP3"

Range("D1").Select
ActiveCell.Value = "AP4"

Range("E1").Select
ActiveCell.Value = "AP5"

Range("F1").Select
ActiveCell.Value = "AP6"

Range("A2").Select

Sheets("FSE").Select

Range("C1").Select

    While Not (IsEmpty(ActiveCell))
    
    If IsEmpty(ActiveCell) Then
    Else
            If ActiveCell.Value = APMAC1 Then
            AP1 = ActiveCell.Offset(0, 2).Value
            Else
            AP1 = "0"
            End If
            
            If ActiveCell.Value = APMAC2 Then
            AP2 = ActiveCell.Offset(0, 2).Value
            Else
            AP2 = "0"
            End If
            
            If ActiveCell.Value = APMAC3 Then
            AP3 = ActiveCell.Offset(0, 2).Value
            Else
            AP3 = "0"
            End If
            
            If ActiveCell.Value = APMAC4 Then
            AP4 = ActiveCell.Offset(0, 2).Value
            Else
            AP4 = "0"
            ActiveCell.Offset(0, 0).Select
            End If
            
            If ActiveCell.Value = APMAC5 Then
            AP5 = ActiveCell.Offset(0, 2).Value
            Else
            AP5 = "0"
            End If
            
            If ActiveCell.Value = APMAC6 Then
            AP6 = ActiveCell.Offset(0, 2).Value
            Else
            AP6 = "0"
            End If
            
        Sheets("RSSI").Select
        
            ActiveCell.Value = AP1
            ActiveCell.Offset(0, 1).Select
            
            ActiveCell.Value = AP2
            ActiveCell.Offset(0, 1).Select
            
            ActiveCell.Value = AP3
            ActiveCell.Offset(0, 1).Select
           
            ActiveCell.Value = AP4
            ActiveCell.Offset(0, 1).Select
            
            ActiveCell.Value = AP5
            ActiveCell.Offset(0, 1).Select
           
            ActiveCell.Value = AP6
            ActiveCell.Offset(1, -5).Select
           
            Sheets("FSE").Select
            ActiveCell.Offset(1, 0).Select
            End If
            
Wend
Sheets("RSSI").Select
Range("A:F").Select
End Sub
0