-----Message d'origine-----
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront
déterminés par la macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform
UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*"
Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" a écrit
dans le message de
news:103e501c43f3c$422dc520$
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des
documents
Quand l'utilisateur cherche un document, il ne connait
pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux
lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau
le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours
à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
.
-----Message d'origine-----
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront
déterminés par la macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform
UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:=ActiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*"
Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news:103e501c43f3c$422dc520$a501280a@phx.gbl...
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des
documents
Quand l'utilisateur cherche un document, il ne connait
pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux
lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau
le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours
à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:=False,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
.
-----Message d'origine-----
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront
déterminés par la macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform
UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*"
Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" a écrit
dans le message de
news:103e501c43f3c$422dc520$
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des
documents
Quand l'utilisateur cherche un document, il ne connait
pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux
lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau
le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours
à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
.
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" a écrit dans le message de
news:103e501c43f3c$422dc520$
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des documents
Quand l'utilisateur cherche un document, il ne connait pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:103e501c43f3c$422dc520$a501280a@phx.gbl...
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des documents
Quand l'utilisateur cherche un document, il ne connait pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" a écrit dans le message de
news:103e501c43f3c$422dc520$
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des documents
Quand l'utilisateur cherche un document, il ne connait pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
Bonjour, Jean-François ....
Pourrais tu m'envoyer un classeur exemple de cette macro?Merci d'avance,
Bon dimanche
Claudy
"Jean-François Aubert" <à a écrit dans le message de
news:Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
Bonjour, Jean-François ....
Pourrais tu m'envoyer un classeur exemple de cette macro?
Merci d'avance,
Bon dimanche
Claudy
"Jean-François Aubert" <àOterjfaubert@bluewin.ch> a écrit dans le message de
news:uXziXI0PEHA.1340@TK2MSFTNGP12.phx.gbl...
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
Bonjour, Jean-François ....
Pourrais tu m'envoyer un classeur exemple de cette macro?Merci d'avance,
Bon dimanche
Claudy
"Jean-François Aubert" <à a écrit dans le message de
news:Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
Merci, a+
Bonjour, Jean-François ....
Pourrais tu m'envoyer un classeur exemple de cette macro?
En enlevant nos_pam...:
Merci d'avance,
Bon dimanche
Claudy
"Jean-François Aubert" <à a écrit dans le message
de
news:Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" a écrit dans le message
de
news:103e501c43f3c$422dc520$
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des documents
Quand l'utilisateur cherche un document, il ne connait pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
Merci, a+
Bonjour, Jean-François ....
Pourrais tu m'envoyer un classeur exemple de cette macro?
En enlevant nos_pam...:weets.claudy@Skynet.be.no_spam
Merci d'avance,
Bon dimanche
Claudy
"Jean-François Aubert" <àOterjfaubert@bluewin.ch> a écrit dans le message
de
news:uXziXI0PEHA.1340@TK2MSFTNGP12.phx.gbl...
Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................
Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" <anonymous@discussions.microsoft.com> a écrit dans le message
de
news:103e501c43f3c$422dc520$a501280a@phx.gbl...
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des documents
Quand l'utilisateur cherche un document, il ne connait pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
Merci, a+
Bonjour, Jean-François ....
Pourrais tu m'envoyer un classeur exemple de cette macro?
En enlevant nos_pam...:
Merci d'avance,
Bon dimanche
Claudy
"Jean-François Aubert" <à a écrit dans le message
de
news:Salut Gilles
Est-ce que ceci ferait ton bonheur ?
tu oublies tes 26 boutons
-le tableau de 350lignes , nommée: ref1
-un Userform nommé: UF1
-un Textbox nommé: TB1
-une Listbox nommée: LB1
(les dimentions et positions de ces éléments seront déterminés par la
macro)
-1 bouton ou autre pour lancer : Sub mon_userform()
'.........dans le haut d'un module
standard.............................................Option Explicit
Public tbl()
Sub mon_userform()
Dim i, esp
UF1.Height = 195
UF1.Width = 418
For i = 1 To 80
esp = esp & " "
Next
UF1.Caption = "Recherche" & esp & _
"code vba: MPFE ajf"
UF1.TB1.Height = 24
UF1.TB1.Width = 150
UF1.TB1.Left = 12
UF1.TB1.Top = 12
UF1.LB1.Height = 93
UF1.LB1.Width = 391
UF1.LB1.Left = 12
UF1.LB1.Top = 66
UF1.Show
End Sub 'ajf
Sub leTableau(i, i2)
ReDim Preserve tbl(i2)
tbl(i2) = i
End Sub ' ajf
'.........Dans le module de l'userform UF1..............................
Option Compare Text
Private Sub LB1_Click()
Dim y
y = tbl(UF1.LB1.ListIndex)
[ref1].Item(y).Select
Application.Goto Reference:¬tiveCell, Scroll:=True
Unload UF1
End Sub ' ajf
Private Sub TB1_KeyUp(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
Dim i, i2
If KeyCode = 16 Then Exit Sub ' touche Majuscule
UF1.LB1.Clear
i2 = -1
For i = 1 To [ref1].Count
If [ref1].Item(i) Like "*" & UF1.TB1 & "*" Then
UF1.LB1.AddItem [ref1].Item(i)
i2 = i2 + 1
leTableau i, i2
End If
Next
End Sub 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"GILLES" a écrit dans le message
de
news:103e501c43f3c$422dc520$
BONJOUR A TOUS
j'ai un tableau de 350lignes environ qui gère des documents
Quand l'utilisateur cherche un document, il ne connait pas
forcément son nom exact (ex: fiche de reception travaux)
ou (reception travaux)
J'ai placé 26 boutons de macro , correspondant aux lettres
de l'alphabet (a,b,c...)pour rechercher dans le tableau le
nom d 'un document à partir de la première lettre.
Jai écrit de petites macro qui cherchent et trient les
lignes, à partir de n° de lignes que j'ai trouvé en
faisant 'enregistreur macro
Mais si je rajoute des lignes ,la macro renvoie toujours à
la ligne écrite dans le code.
Comment faire pour que le code tienne compte de ces
évolutions?
ex: macro pour lettre "a"
Sub tria()
' tri_a Macro
Rows("5:350").Select
Range("A350").Activate
Selection.Sort Key1:=Range("AA5"),
Order1:=xlDescending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom
Range("C5").Select
End Sub
Par ailleurs je cherche un moyen , genre moteur de
recherche ou l'utilisateur rentre un mot (ex: fiche) et
qui irait chercher la 1ère ligne , comme dans l'aide en
ligne d'excel
Je ne sais pas si je suis bien bien clair
Merci à ceusse qui seraient en mesure de m'éclairer