XL 2013 Recherche avec fenetre

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Moreno076

XLDnaute Impliqué
Bonjour à tous.

Dans le fichier ci-joint, je souhaite que lorsqu'il s'ouvre il propose une fenetre de recherche demandant un code article et faire OK.
Si le code article se trouve dans la colonne A, alors il met "Fiche retirée en semaine "puis recopie la colonne I ce qui ferait Fiche retirée en S46 par exemple.
Si le code ne se trouve pas dans la colonne A alors "Fiche non présente".
Et si possible avoir la possibilité de fermer la boite de dialogue pour pouvoir rajouter des lignes dans le fichier.

Merci pour votre aide.
 

Pièces jointes

Solution
Bonsoir Moreno076,

Pour faire cela il faut remplacer l'InputBox par un UserForm, voyez son code dans le fichier joint :
VB:
Dim c As Range 'mémorise la variable

Private Sub CommandButton1_Click()
Set c = [A:A].Find(TextBox1, IIf(c Is Nothing, [A1], c), xlValues, xlWhole)
If c Is Nothing Then
    [A1].Select
    MsgBox "Fiche produit '" & TextBox1 & "' non présente", vbCritical
Else
    c.EntireRow.Select 'sélectionne la ligne entière
End If
End Sub

Private Sub TextBox1_Change()
Set c = Nothing 'RAZ
End Sub
A+
Bonsoir à tous.

Je souhaite améliorer le fichier.

J'aurais besoin que la fenetre de recherche reste visible tout le temps. Est ce possible???.
J'aurais besoin aussi que lors de la recherche si le resultat est positif que l'on se rende directement sur la ligne trouvée car il y a dans le fichier d 'origine des milliers de références.

Merci pour votre grande aide.
 

Pièces jointes

Bonsoir Moreno076,

Pour faire cela il faut remplacer l'InputBox par un UserForm, voyez son code dans le fichier joint :
VB:
Dim c As Range 'mémorise la variable

Private Sub CommandButton1_Click()
Set c = [A:A].Find(TextBox1, IIf(c Is Nothing, [A1], c), xlValues, xlWhole)
If c Is Nothing Then
    [A1].Select
    MsgBox "Fiche produit '" & TextBox1 & "' non présente", vbCritical
Else
    c.EntireRow.Select 'sélectionne la ligne entière
End If
End Sub

Private Sub TextBox1_Change()
Set c = Nothing 'RAZ
End Sub
A+
 

Pièces jointes

Bonsoir Moreno076,

Pour faire cela il faut remplacer l'InputBox par un UserForm, voyez son code dans le fichier joint :
VB:
Dim c As Range 'mémorise la variable

Private Sub CommandButton1_Click()
Set c = [A:A].Find(TextBox1, IIf(c Is Nothing, [A1], c), xlValues, xlWhole)
If c Is Nothing Then
    [A1].Select
    MsgBox "Fiche produit '" & TextBox1 & "' non présente", vbCritical
Else
    c.EntireRow.Select 'sélectionne la ligne entière
End If
End Sub

Private Sub TextBox1_Change()
Set c = Nothing 'RAZ
End Sub
A+
Merci c'est impeccable ca marche super.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
595
Retour