OVH Cloud OVH Cloud

Lien vers une cellule

13 réponses
Avatar
Al Bundy
Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere colonne
est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer une
barre de boutons en haut de mon fichier avec des lettres A - B -C etc etc..
qui seraient des boutons qui m'emmenerait directement sur le premier nom
correspondant a la lettre. (ou je peux inserer une ligne A, une B.. etc
etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca m'jnteresse
fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la ligne x
de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait pouvoir
bricoler avec ca mais si il y a des outils plus "propre"je suis preneur.
merci

10 réponses

1 2
Avatar
ChrisV
Bonjour Al Bundy,

Solution alternative qui ne nécessiterait pas une BO (qui devra dans ce cas
gérer les évènements relatifs à l'activation, désactivation ou fermeture du
fichier ou de l'onglet concerné...), ni la création des 26 boutons associés
!!!

En supposant que les données se situent en A1:Axx, insérer une ligne au
dessus de A1.
Cette cellule sera utilisée pour atteindre la première lettre souhaitée en
A2:Axx.
A partir de A2, par les menus, Fenêtre/Figer les volets

Dans la feuille de code de l'onglet concerné:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then zaza
End Sub

Sub zaza()
Dim C As Range
Application.ScreenUpdating = False
For Each C In Range("Zn")
With Application
If .CountIf(C, [A1] & "*") > 0 Then _
.GoTo Reference:=C, Scroll:=True: Exit For
End With
Next C
End Sub

Il te suffit maintenant, de retour sur l'onglet concerné, en A1, de saisir
la lettre que tu souhaites atteindre, puis de valider par Entrée.


ChrisV


"Al Bundy" a écrit dans le message de news:
%
Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne
est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer une
barre de boutons en haut de mon fichier avec des lettres A - B -C etc
etc..
qui seraient des boutons qui m'emmenerait directement sur le premier nom
correspondant a la lettre. (ou je peux inserer une ligne A, une B.. etc
etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca m'jnteresse
fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la ligne
x
de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait pouvoir
bricoler avec ca mais si il y a des outils plus "propre"je suis preneur.
merci




Avatar
ChrisV
Oups...
Oublié de préciser que la plage données (A2:Axx) se nommée ici Zn...


ChrisV


"ChrisV" a écrit dans le message de news:

Bonjour Al Bundy,

Solution alternative qui ne nécessiterait pas une BO (qui devra dans ce
cas gérer les évènements relatifs à l'activation, désactivation ou
fermeture du fichier ou de l'onglet concerné...), ni la création des 26
boutons associés !!!

En supposant que les données se situent en A1:Axx, insérer une ligne au
dessus de A1.
Cette cellule sera utilisée pour atteindre la première lettre souhaitée en
A2:Axx.
A partir de A2, par les menus, Fenêtre/Figer les volets

Dans la feuille de code de l'onglet concerné:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then zaza
End Sub

Sub zaza()
Dim C As Range
Application.ScreenUpdating = False
For Each C In Range("Zn")
With Application
If .CountIf(C, [A1] & "*") > 0 Then _
.GoTo Reference:=C, Scroll:=True: Exit For
End With
Next C
End Sub

Il te suffit maintenant, de retour sur l'onglet concerné, en A1, de saisir
la lettre que tu souhaites atteindre, puis de valider par Entrée.


ChrisV


"Al Bundy" a écrit dans le message de news:
%
Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne
est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer une
barre de boutons en haut de mon fichier avec des lettres A - B -C etc
etc..
qui seraient des boutons qui m'emmenerait directement sur le premier nom
correspondant a la lettre. (ou je peux inserer une ligne A, une B.. etc
etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca m'jnteresse
fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la
ligne x
de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait pouvoir
bricoler avec ca mais si il y a des outils plus "propre"je suis preneur.
merci








Avatar
Oliv'
Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer
une barre de boutons en haut de mon fichier avec des lettres A - B
-C etc etc.. qui seraient des boutons qui m'emmenerait directement
sur le premier nom correspondant a la lettre. (ou je peux inserer une
ligne A, une B.. etc etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca
m'jnteresse fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la
ligne x de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait
pouvoir bricoler avec ca mais si il y a des outils plus "propre"je
suis preneur. merci


Tu peux créer des "cases d'options" avec la barre d'outils contrôles
26 ou moins si tu veux regrouper les - fréquentes
et dans l'évenement click tu mets cela :

Private Sub B_Click()
Dim c
quoi = "b*" 'le * avec LookAt:=xlWhole c'est pour trouver la première
lettre du mot
With Range("a:a")
Set c = .Find(What:=quoi, LookIn:=xlValues, LookAt:=xlWhole,
MatchCase:úlse)
If Not c Is Nothing Then
c.Select
End If

End With
End Sub

tu peux aussi créer une macro unique et l'appeler à partir de l'évenement
click avec l'argument "quoi"


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Avatar
Al Bundy
Merci pour les infos :)
En fait j ai trouve application.goto sur le net.. donc j ai teste avec ca..
Et pour faire moins chargé je vais plutot passer par une combo box avec mon
choix de lettres dedans (a,b,c...)

Ce que je fit.. en fait ca marche mais avec un plantage, je selectionne ma
lettre dans ma combobox, ca m emmene bien sur la cellule mais plantage:
Erreur d'execution '1004'
Reference non valide



Avec un peu de code:

Private Sub ComboBox1_Change() 'menu deroulant pour acceder
directement aux nomscomencant par la lettre..
Select Case ComboBox1.Value
Case "A"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posa, colndd).Select, Scroll:=True
Case "b"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posb, colndd).Select, Scroll:=True
Case "c"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posc, colndd).Select, Scroll:=True
Case "d"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posd, colndd).Select, Scroll:=True
Case "e"


Je precise que les valeurs "posa" "colndd" sont bien recuperees... posa numero de la ligne du premier mot del a lettere "A" colndd est toujours = a
1 quand a lui..
Et au plantage je vois bien que les valeurs sont bien recuperees.. de plus
quand ca plante je suis bien sur la bonne case d arrivee..



vous voyez pourquoi j ai ce message ?

si oui je vous écoute :)
Merci beaucoup
bonne soirée.






"Oliv'" <(supprimerceci) a écrit dans le
message de news:%23O4ws%

Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer
une barre de boutons en haut de mon fichier avec des lettres A - B
-C etc etc.. qui seraient des boutons qui m'emmenerait directement
sur le premier nom correspondant a la lettre. (ou je peux inserer une
ligne A, une B.. etc etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca
m'jnteresse fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la
ligne x de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait
pouvoir bricoler avec ca mais si il y a des outils plus "propre"je
suis preneur. merci


Tu peux créer des "cases d'options" avec la barre d'outils contrôles
26 ou moins si tu veux regrouper les - fréquentes
et dans l'évenement click tu mets cela :

Private Sub B_Click()
Dim c
quoi = "b*" 'le * avec LookAt:=xlWhole c'est pour trouver la première
lettre du mot
With Range("a:a")
Set c = .Find(What:=quoi, LookIn:=xlValues, LookAt:=xlWhole,
MatchCase:úlse)
If Not c Is Nothing Then
c.Select
End If

End With
End Sub

tu peux aussi créer une macro unique et l'appeler à partir de l'évenement
click avec l'argument "quoi"


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~





Avatar
isabelle
Bonjour Al Bundy,

Private Sub ComboBox1_Change()
x = Worksheets("dnsrecord").Columns("A:A").Find(What:=ComboBox1.Value & "*", LookAt:=xlPart).Row
Application.Goto Worksheets("dnsrecord").Cells(x, 1), Scroll:=True
End Sub

isabelle

Merci pour les infos :)
En fait j ai trouve application.goto sur le net.. donc j ai teste avec ca..
Et pour faire moins chargé je vais plutot passer par une combo box avec mon
choix de lettres dedans (a,b,c...)

Ce que je fit.. en fait ca marche mais avec un plantage, je selectionne ma
lettre dans ma combobox, ca m emmene bien sur la cellule mais plantage:
Erreur d'execution '1004'
Reference non valide



Avec un peu de code:

Private Sub ComboBox1_Change() 'menu deroulant pour acceder
directement aux nomscomencant par la lettre..
Select Case ComboBox1.Value
Case "A"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posa, colndd).Select, Scroll:=True
Case "b"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posb, colndd).Select, Scroll:=True
Case "c"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posc, colndd).Select, Scroll:=True
Case "d"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posd, colndd).Select, Scroll:=True
Case "e"


Je precise que les valeurs "posa" "colndd" sont bien recuperees... posa > numero de la ligne du premier mot del a lettere "A" colndd est toujours = a
1 quand a lui..
Et au plantage je vois bien que les valeurs sont bien recuperees.. de plus
quand ca plante je suis bien sur la bonne case d arrivee..



vous voyez pourquoi j ai ce message ?

si oui je vous écoute :)
Merci beaucoup
bonne soirée.






"Oliv'" <(supprimerceci) a écrit dans le
message de news:%23O4ws%


Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer
une barre de boutons en haut de mon fichier avec des lettres A - B
-C etc etc.. qui seraient des boutons qui m'emmenerait directement
sur le premier nom correspondant a la lettre. (ou je peux inserer une
ligne A, une B.. etc etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca
m'jnteresse fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la
ligne x de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait
pouvoir bricoler avec ca mais si il y a des outils plus "propre"je
suis preneur. merci


Tu peux créer des "cases d'options" avec la barre d'outils contrôles
26 ou moins si tu veux regrouper les - fréquentes
et dans l'évenement click tu mets cela :

Private Sub B_Click()
Dim c
quoi = "b*" 'le * avec LookAt:=xlWhole c'est pour trouver la première
lettre du mot
With Range("a:a")
Set c = .Find(What:=quoi, LookIn:=xlValues, LookAt:=xlWhole,
MatchCase:úlse)
If Not c Is Nothing Then
c.Select
End If

End With
End Sub

tu peux aussi créer une macro unique et l'appeler à partir de l'évenement
click avec l'argument "quoi"


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~










Avatar
Oliv'
Bonjour Al Bundy,

Private Sub ComboBox1_Change()
x = Worksheets("dnsrecord").Columns("A:A").Find(What:=ComboBox1.Value
& "*", LookAt:=xlPart).Row Application.Goto
Worksheets("dnsrecord").Cells(x, 1), Scroll:=True End Sub


Désolé isabelle mais si tu as des noms du style
anatole
albert
bernard
et que tu cherches b* avec LookAt:=xlPart tu va tomber sur albert
non ?

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
isabelle

Merci pour les infos :)
En fait j ai trouve application.goto sur le net.. donc j ai teste
avec ca.. Et pour faire moins chargé je vais plutot passer par une
combo box avec mon choix de lettres dedans (a,b,c...)

Ce que je fit.. en fait ca marche mais avec un plantage, je
selectionne ma lettre dans ma combobox, ca m emmene bien sur la
cellule mais plantage: Erreur d'execution '1004'
Reference non valide



Avec un peu de code:

Private Sub ComboBox1_Change() 'menu deroulant pour acceder
directement aux nomscomencant par la lettre..
Select Case ComboBox1.Value
Case "A"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posa, colndd).Select,
Scroll:=True Case "b"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posb, colndd).Select,
Scroll:=True Case "c"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posc, colndd).Select,
Scroll:=True Case "d"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posd, colndd).Select,
Scroll:=True Case "e"


Je precise que les valeurs "posa" "colndd" sont bien recuperees...
posa = numero de la ligne du premier mot del a lettere "A" colndd
est toujours = a 1 quand a lui..
Et au plantage je vois bien que les valeurs sont bien recuperees..
de plus quand ca plante je suis bien sur la bonne case d arrivee..



vous voyez pourquoi j ai ce message ?

si oui je vous écoute :)
Merci beaucoup
bonne soirée.






"Oliv'" <(supprimerceci) a écrit dans le
message de news:%23O4ws%


Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me
créer une barre de boutons en haut de mon fichier avec des
lettres A - B -C etc etc.. qui seraient des boutons qui
m'emmenerait directement sur le premier nom correspondant a la
lettre. (ou je peux inserer une ligne A, une B.. etc etc).

Comme des liens dans une page html qui emmene sur des paragraphe
de la page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca
m'jnteresse fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur
la ligne x de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait
pouvoir bricoler avec ca mais si il y a des outils plus "propre"je
suis preneur. merci


Tu peux créer des "cases d'options" avec la barre d'outils contrôles
26 ou moins si tu veux regrouper les - fréquentes
et dans l'évenement click tu mets cela :

Private Sub B_Click()
Dim c
quoi = "b*" 'le * avec LookAt:=xlWhole c'est pour trouver la
première lettre du mot
With Range("a:a")
Set c = .Find(What:=quoi, LookIn:=xlValues, LookAt:=xlWhole,
MatchCase:úlse)
If Not c Is Nothing Then
c.Select
End If

End With
End Sub

tu peux aussi créer une macro unique et l'appeler à partir de
l'évenement click avec l'argument "quoi"


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~







Avatar
Al Bundy
Bon g resolu mon probleme:
ca marche avec
Case "A"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Range("a1:a7500").Offset(posa, 0),
Scroll:=True
Case "b"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Range("a1:a7500").Offset(posb, 0),
Scroll:=True
Case "c"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Range("a1:a7500").Offset(posc, 0),
Scroll:=True
Case "d"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Range("a1:a7500").Offset(posd, 0),
Scroll:=True

voila...
Merci a toutes les forces vives qui se sont mis en branle pour me filer un
coup de main.
bonne journée.


"isabelle" a écrit dans le message de
news:
Bonjour Al Bundy,

Private Sub ComboBox1_Change()
x = Worksheets("dnsrecord").Columns("A:A").Find(What:=ComboBox1.Value &
"*", LookAt:=xlPart).Row

Application.Goto Worksheets("dnsrecord").Cells(x, 1), Scroll:=True
End Sub

isabelle

Merci pour les infos :)
En fait j ai trouve application.goto sur le net.. donc j ai teste avec
ca..


Et pour faire moins chargé je vais plutot passer par une combo box avec
mon


choix de lettres dedans (a,b,c...)

Ce que je fit.. en fait ca marche mais avec un plantage, je selectionne
ma


lettre dans ma combobox, ca m emmene bien sur la cellule mais plantage:
Erreur d'execution '1004'
Reference non valide



Avec un peu de code:

Private Sub ComboBox1_Change() 'menu deroulant pour acceder
directement aux nomscomencant par la lettre..
Select Case ComboBox1.Value
Case "A"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posa, colndd).Select,
Scroll:=True


Case "b"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posb, colndd).Select,
Scroll:=True


Case "c"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posc, colndd).Select,
Scroll:=True


Case "d"
ActiveWorkbook.Application.Goto
Reference:=Worksheets("dnsrecord").Cells(posd, colndd).Select,
Scroll:=True


Case "e"


Je precise que les valeurs "posa" "colndd" sont bien recuperees... posa
numero de la ligne du premier mot del a lettere "A" colndd est toujours
= a


1 quand a lui..
Et au plantage je vois bien que les valeurs sont bien recuperees.. de
plus


quand ca plante je suis bien sur la bonne case d arrivee..



vous voyez pourquoi j ai ce message ?

si oui je vous écoute :)
Merci beaucoup
bonne soirée.






"Oliv'" <(supprimerceci) a écrit dans le
message de news:%23O4ws%


Bonjour,
j'ai un fichier excel avec a peu pres 7000 lignes, dont la premiere
colonne est composée de noms.
Les lignes sont triés par ordre alphabétique et je voudrai me créer
une barre de boutons en haut de mon fichier avec des lettres A - B
-C etc etc.. qui seraient des boutons qui m'emmenerait directement
sur le premier nom correspondant a la lettre. (ou je peux inserer une
ligne A, une B.. etc etc).

Comme des liens dans une page html qui emmene sur des paragraphe de la
page...

J'ai été clair? rien n'est moins sur.. :)

Si vous voyez de quoi je parle et que vous avez des infos ca
m'jnteresse fortement..

ou deja si vous avez une commande qui m'emmene "visuellement" sur la
ligne x de mon fichier ca m'interesse.
Merci beaucoup
Nicolas


ps: il me vient a l idée de jouer avec .activecell .. je devrait
pouvoir bricoler avec ca mais si il y a des outils plus "propre"je
suis preneur. merci


Tu peux créer des "cases d'options" avec la barre d'outils contrôles
26 ou moins si tu veux regrouper les - fréquentes
et dans l'évenement click tu mets cela :

Private Sub B_Click()
Dim c
quoi = "b*" 'le * avec LookAt:=xlWhole c'est pour trouver la première
lettre du mot
With Range("a:a")
Set c = .Find(What:=quoi, LookIn:=xlValues, LookAt:=xlWhole,
MatchCase:úlse)
If Not c Is Nothing Then
c.Select
End If

End With
End Sub

tu peux aussi créer une macro unique et l'appeler à partir de
l'évenement



click avec l'argument "quoi"


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~












Avatar
isabelle
avec une recherche du style "*b*" albert serait trouver mais pas avec une recherche "b*".

isabelle


Bonjour Al Bundy,

Private Sub ComboBox1_Change()
x = Worksheets("dnsrecord").Columns("A:A").Find(What:=ComboBox1.Value
& "*", LookAt:=xlPart).Row Application.Goto
Worksheets("dnsrecord").Cells(x, 1), Scroll:=True End Sub



Désolé isabelle mais si tu as des noms du style
anatole
albert
bernard
et que tu cherches b* avec LookAt:=xlPart tu va tomber sur albert
non ?




Avatar
Oliv'
avec une recherche du style "*b*" albert serait trouver mais pas avec
une recherche "b*".


que neni !! seulement si LookAt:=xlWhole



--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Bonjour Al Bundy,

Private Sub ComboBox1_Change()
x >>> Worksheets("dnsrecord").Columns("A:A").Find(What:=ComboBox1.Value &
"*", LookAt:=xlPart).Row Application.Goto
Worksheets("dnsrecord").Cells(x, 1), Scroll:=True End Sub



Désolé isabelle mais si tu as des noms du style
anatole
albert
bernard
et que tu cherches b* avec LookAt:=xlPart tu va tomber sur albert
non ?





Avatar
Al Bundy
de toutes facon pour eviter une recherche a chaque fois je fais une
recherche a l ouverture de mon fichier, du numero de cellule de la premiere
occurence d 'une des lettres.. et si j en trouve j' ajoute la valeur dans la
combobox..
j apelle donc 26 fois la fonction suivante,.. posa trouvepremierecellule("a") posb=premierecel..... etc etc
avec posa posb posc posd etc etc en var public

Comme ca la recherche est faite et je connais a l avance le numero ou aller
...

Function trouvepremierecellule(lettre As String)
Call initvar
trouvepremierecellule = ""
With Worksheets("dnsrecord").Range("a1:a" & nbdeligne)
For i = 2 To nbdeligne Step 1
If (Left(Cells(i, colndd), 1) = lettre) Then
trouvepremierecellule = i
Exit For
End If
Next i
End With
End Function
.........
posw = trouvepremierecellule("w")
posx = trouvepremierecellule("x")
posy = trouvepremierecellule("y")
posz = trouvepremierecellule("z")
Worksheets("dnsrecord").ComboBox1.Clear 'on efface la liste des entree du
combobox.. on ne rajoute que les lettres existantes
If posa <> "" Then Worksheets("dnsrecord").ComboBox1.AddItem "A"
If posb <> "" Then Worksheets("dnsrecord").ComboBox1.AddItem "B"
If posc <> "" Then Worksheets("dnsrecord").ComboBox1.AddItem "C"
If posd <> "" Then Worksheets("dnsrecord").ComboBox1.AddItem "D"


je pense qu'il vaut ieux calculer avant les valeurs, ca evite un traitement
a chaque fois.
voila
bon week end


"Oliv'" <(supprimerceci) a écrit dans le
message de news:

avec une recherche du style "*b*" albert serait trouver mais pas avec
une recherche "b*".


que neni !! seulement si LookAt:=xlWhole



--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Pour me joindre : http://cerbermail.com/?V8r2o1YHl4
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Bonjour Al Bundy,

Private Sub ComboBox1_Change()
x > >>> Worksheets("dnsrecord").Columns("A:A").Find(What:=ComboBox1.Value &
"*", LookAt:=xlPart).Row Application.Goto
Worksheets("dnsrecord").Cells(x, 1), Scroll:=True End Sub



Désolé isabelle mais si tu as des noms du style
anatole
albert
bernard
et que tu cherches b* avec LookAt:=xlPart tu va tomber sur albert
non ?









1 2