liste déroulante - recherche - vlookup ??

pitchoune85

XLDnaute Junior
Bonjout le forum
je viens vers vous pour de l'aide avec la fonction recherche en vba :
j'ai créer un formulaire avec une liste déroulante faisant réf à une colonne nommé 'nom' défini avec la fonction décaler.
cette liste me donne le nom prénom de personnes.
j'aimerai, qd je choisi une personne de la liste
ça m'ouvre une msgbox me demandant si je veux vraiment supprimer cette personne : si oui, ca me supprime la ligne contenant cette personne, si non, je choisi une autre personne ou je quitte le formulaire
merci de votre aide
pitchoune
 

Darnel

XLDnaute Impliqué
salut

voila un début qui pourrait te servir

Sub effacer()
Dim MaListe As Range
Set MaListe = ActiveCell

If MaListe.Column (différent de) 2 Then

MsgBox ('Veuillez vous placer sur un Nom')

Exit Sub

ElseIf MaFichesynthèse.Row inf 3 Then

MsgBox ('Veuillez vous placer sur un Nom')

Exit Sub

Else

Dim sup As Double
sup = MsgBox('Voulez-vous supprimer cette personne', vbYesNo, 'DANGER')
If sup = vbYes Then
ActiveCell.Select
Selection.EntireRow.Delete
Range('A1').Select
MsgBox ('Fiche supprimée')
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

Else
MsgBox ('Annulation de l'opération suppression de Fiche')
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

End If

End If
End Sub


il te reste juste à determiner ou se trouvent tes colonnes et lignes avec les noms pour modifier les lignes suivantes dans le code que je t'ai donner:

If MaListe.Column diff 2 Then
ElseIf MaFichesynthèse.Row inf 3 Then

tu change les numéros de colonnes et de ligne
au fait, dans If MaListe... tu remplace MaListe par MaNomdetafeuille...
voila
pour ce qui est de pouvoir l'utiliser depuis ta liste deroul je sais po...

tient moi au courant

Message édité par: darnel, à: 14/03/2006 14:41
 

andré

XLDnaute Barbatruc
Salut,

Je crains fort que tu n'obtiennes de réponse.

'supprimer cette personne' est non seulement défendu par la morale, mais aussi punisable par la loi.

A moins que tu entendes par là 'supprimer le nom de cette personne de la liste'.

Hélas, je ne puis te venir en aide pour des macros, je le regrette crois-le.

Ne t'impatientes pas, un macrotiste ne va pas tarder.

Â+

EDITION :
salut Darnel, je ne t'avais pas vu.

Message édité par: andré, à: 14/03/2006 14:40
 

pitchoune85

XLDnaute Junior
j'ai trouvé cette macro qui fonctionne si la liste se trouve en colonne A du tableau

la mienne se trouve en colonne AV

est ce que quelqu'un saurait les modif a apporter

merci
pitchoune

Dim Var
Dim NumLg
On Error Resume Next
Var = Usf3.ComboBox1
Cells.Find(What:=Var, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate
ActiveCell.Select
With Application.ActiveCell
NumLg = .Row
End With
ActiveCell.EntireRow.Select
Style = vbYesNo + vbDefaultButton1
Msg = 'Suppression de la ligne N°: ' & NumLg
Title = 'Attention suppression de la ligne.'
Réponse = MsgBox(Msg, Style, Title)
If Réponse = vbYes Then
Selection.Delete Shift:=xlUp
Else
Exit Sub
End If
End Sub
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour Pitchoune, mon cher Ândré, Damel, le Forum

Voici une solution pour supprimer des personnes de ta colonne 'Avé' (César! ceux qui vont mourir te saluent !!!)

Car comme on le sait bien VBA peut signifier aussi Very Big Apocalypse !!! lol)

Option Explicit

Private Sub CommandButton1_Click()
Dim MyVar As String
Dim Reponse As Byte
Dim Cell As Range
Dim WS As Worksheet

Set WS = ThisWorkbook.Worksheets('Sheet1')

MyVar = ComboBox1
Set Cell = WS.Cells.Find(What:=MyVar, LookAt:=xlPart)

If Not Cell Is Nothing Then
    Reponse = MsgBox('Suppression de la ligne N° ' & Cell.Row, _
                vbQuestion + vbYesNo, 'Attention suppression de la ligne pour ' & MyVar)


   
If Reponse = vbYes Then
        WS.Rows(Cell.Row).Delete
   
End If

Else
    MsgBox 'Item ' & MyVar & 'Non Trouvé !'

End If

End Sub


Bon Aprèm
[ol]@+Thierry[/ol]
 

pitchoune85

XLDnaute Junior
comme convenu
ci joint un extrait de mon fichier avec la macro supprimer
merci bcp [file name=Classeur2_20060316100924.zip size=48534]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20060316100924.zip[/file]
 

Pièces jointes

  • Classeur2_20060316100924.zip
    47.4 KB · Affichages: 61

pitchoune85

XLDnaute Junior
houps
thierry
je n'avais pas mis la macro au bon endroit mais ça ne fonctionne toujours pas... :ermm: [file name=Classeur2bis_20060316101530.zip size=48347]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2bis_20060316101530.zip[/file]
 

Pièces jointes

  • Classeur2bis_20060316101530.zip
    47.2 KB · Affichages: 50

Discussions similaires

Réponses
12
Affichages
371
Réponses
2
Affichages
317

Statistiques des forums

Discussions
312 519
Messages
2 089 266
Membres
104 083
dernier inscrit
hecko