Bonjour,
Je travail actuellement sur un petit programme ( je suis pas sur que le terme soit approprié ^^) et j'ai besoin d'aide.
J'utilise Excel 2007.
But du programme :
Vérifier dans la colone A Cellule 1 à première cellule vide si le nom entré dans la textbox existe.
-> OK pas de soucis ^^
Si il existe modifié la ligne correspondant à ce nom sinon la créer en dessous du dernier nom.
-> Ok pas de soucis ^^
Incrémenté à certains nombre de valeurs et les bidouiller pour ma sauce.
-> Ok pas de soucis ^^
Vous l'aurez compris en lui-même ça fonctionne. Mon soucis se situe plus sur le coté kikou t'as vu les superfonctions de mon prog de PGM
En effet j'aimerai créer une aide à la saisie ou autocompletion sur la textbox dans laquelle se situe le nom avec comme source la colone A cellule 2 à première cellule vide et là par contre c'est la croix et la bannière.
J'ai déjà tenté de réfléchir un peu par moi-même ( en dessous le raisonnement suivi ^^ ) mais je commence à être totalement largé !
J'ai commencer par faire un tour dans l'aide VB intégré à Excel et suit tombé sur "AutoComplete, méthode" j'ai cru mon bonheur trouvé mais malheureusement ça ne semble fonctionné qu'avec une seule cellule.
J'ai trouver sur le net diverses propriété du genre Autocompletesource etc mais impossible à trouver dans excel : /
Bon pas grâce me suis je dit si ce que je veux n'existe pas je vais le créer
J'ai donc décidé de créer une fonction :
- qui recherche toutes les cellules de la colone contenant quelque chose :
For i = 2 To 500 'Ne depassera jamais 500
If Cells(i, 1).Value = "" Then
Exit For
Else
Cells(i, 1).Value = Tableau(i)
End If
End If
Next i
Bon j'ai un tableau contenant mes noms c'est déjà ça
- Ensuite j'ai besoin de découper ces chaines caractère par caractère et les comparer à la valeur entré allons y :
For i = 2 to 500
Caracref = Val(Mid(Me.TextBox1.Value, i, 1)) 'Premier caractere du nom saisie
carac1 = Val(Mid(tableau(i).Value, i, 1)) 'Premier caractere de la case en cour
if caracref = carac1 then
tableau2(i) = tableau(i)
Et là arrive mon problème, à chaque fois que je compare une lettre dans ma logique je vais créer un tableau pour garder uniquement les résultats correspondants... Ca va vite faire très lourd et si j'ai un mec qui s'appel Grunttergranberger je vous en parle même pas ^^.
Second soucis auquel j'ai déjà réfléchis après ben cette autocompletion faut l'affiché sans remplacer le texte entré par l'utilisateur Je vais devoir encore découpé dans la chaine dans tout les sens.
J'en suis arrivé aux conclusion suivantes :
1 ) Ma logique de traitement du problème est mauvaise, je me prend la tête pour rien, il doit exister un process de comparaison plus simple mais n'étant pas dév je n'ai pas cette "logique dév".
2 ) Il y'a probablement une fonction dans excel que j'ai raté qui peux faire çà.
Voilà, une fonction clé en main d'excel me ferai gagner beaucoup de temps, mais je serai quand même fortement intéréssé de comprendre comment faire, quelqu'un peux t il m'éclairer sur les étapes à suivre pour ce type d'objectif ?
De quelle manière dois je m'y prendre ^^
Je travail actuellement sur un petit programme ( je suis pas sur que le terme soit approprié ^^) et j'ai besoin d'aide.
J'utilise Excel 2007.
But du programme :
Vérifier dans la colone A Cellule 1 à première cellule vide si le nom entré dans la textbox existe.
-> OK pas de soucis ^^
Si il existe modifié la ligne correspondant à ce nom sinon la créer en dessous du dernier nom.
-> Ok pas de soucis ^^
Incrémenté à certains nombre de valeurs et les bidouiller pour ma sauce.
-> Ok pas de soucis ^^
Vous l'aurez compris en lui-même ça fonctionne. Mon soucis se situe plus sur le coté kikou t'as vu les superfonctions de mon prog de PGM
En effet j'aimerai créer une aide à la saisie ou autocompletion sur la textbox dans laquelle se situe le nom avec comme source la colone A cellule 2 à première cellule vide et là par contre c'est la croix et la bannière.
J'ai déjà tenté de réfléchir un peu par moi-même ( en dessous le raisonnement suivi ^^ ) mais je commence à être totalement largé !
J'ai commencer par faire un tour dans l'aide VB intégré à Excel et suit tombé sur "AutoComplete, méthode" j'ai cru mon bonheur trouvé mais malheureusement ça ne semble fonctionné qu'avec une seule cellule.
J'ai trouver sur le net diverses propriété du genre Autocompletesource etc mais impossible à trouver dans excel : /
Bon pas grâce me suis je dit si ce que je veux n'existe pas je vais le créer
J'ai donc décidé de créer une fonction :
- qui recherche toutes les cellules de la colone contenant quelque chose :
For i = 2 To 500 'Ne depassera jamais 500
If Cells(i, 1).Value = "" Then
Exit For
Else
Cells(i, 1).Value = Tableau(i)
End If
End If
Next i
Bon j'ai un tableau contenant mes noms c'est déjà ça
- Ensuite j'ai besoin de découper ces chaines caractère par caractère et les comparer à la valeur entré allons y :
For i = 2 to 500
Caracref = Val(Mid(Me.TextBox1.Value, i, 1)) 'Premier caractere du nom saisie
carac1 = Val(Mid(tableau(i).Value, i, 1)) 'Premier caractere de la case en cour
if caracref = carac1 then
tableau2(i) = tableau(i)
Et là arrive mon problème, à chaque fois que je compare une lettre dans ma logique je vais créer un tableau pour garder uniquement les résultats correspondants... Ca va vite faire très lourd et si j'ai un mec qui s'appel Grunttergranberger je vous en parle même pas ^^.
Second soucis auquel j'ai déjà réfléchis après ben cette autocompletion faut l'affiché sans remplacer le texte entré par l'utilisateur Je vais devoir encore découpé dans la chaine dans tout les sens.
J'en suis arrivé aux conclusion suivantes :
1 ) Ma logique de traitement du problème est mauvaise, je me prend la tête pour rien, il doit exister un process de comparaison plus simple mais n'étant pas dév je n'ai pas cette "logique dév".
2 ) Il y'a probablement une fonction dans excel que j'ai raté qui peux faire çà.
Voilà, une fonction clé en main d'excel me ferai gagner beaucoup de temps, mais je serai quand même fortement intéréssé de comprendre comment faire, quelqu'un peux t il m'éclairer sur les étapes à suivre pour ce type d'objectif ?
De quelle manière dois je m'y prendre ^^
Dernière édition: