Dans mon exemple, je saisi dans la colonne A, du texte sous forme de :
xx-zz-yy; ou yy est toujours repr=E9sent=E9 par un nombre qui compte le
changement des valeurs en colonne C.
Par exemple :
Si dans la colonne C on a 50, dans la colonne A je saisirais : xx-zz-1
S'il y'a une autre valeur que 50, pour la m=EAme cha=EEne zz, j'=E9cris dans=
A : xx-zz-2
Dans feuil2, il y'a une r=E9capitulation de ce qui est saisie pour la
m=EAme cha=EEne (zz ici).
Parfois, en bas de la page, avant de saisir mon texte, j'aimerais
savoir si la valeur 52 existe d=E9j=E0 pour la cha=EEne zz, alors en
saisissant deux fois de suite le tiret (--) comme =E7a en de texte :
xx-zz--
Une fen=EAtre (comme celle des commentaires) viendra s'ouvrir pour me
lister toutes les lignes d=E9j=E0 r=E9capitul=E9es dans la feuil2 pour la
cha=EEne zz.
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target Like "*--" Then Do While Sheets("Feuil2").Range("A2").Offset(i, 0).Row < Sheets("Feuil2").Range("A65535").End(xlUp).Offset(1, 0).Row If Sheets("Feuil2").Range("A2").Offset(i, 0) Like Mid(Target, 1, Len(Target) - 2) & "*" Then Donnée = Donnée & Sheets("Feuil2").Range("A2").Offset(i, 0) & vbLf End If i = i + 1 Loop MsgBox (Donnée) End If End If End Sub
Résultat dans une boîte de dialogue
Celà devrait te convenir
Dis moi !!!!
Bonsoir à tous,
Dans mon exemple, je saisi dans la colonne A, du texte sous forme de :
xx-zz-yy; ou yy est toujours représenté par un nombre qui compte le changement des valeurs en colonne C.
Par exemple :
Si dans la colonne C on a 50, dans la colonne A je saisirais : xx-zz-1
S'il y'a une autre valeur que 50, pour la même chaîne zz, j'écris dans A : xx-zz-2
Dans feuil2, il y'a une récapitulation de ce qui est saisie pour la même chaîne (zz ici).
Parfois, en bas de la page, avant de saisir mon texte, j'aimerais savoir si la valeur 52 existe déjà pour la chaîne zz, alors en saisissant deux fois de suite le tiret (--) comme ça en de texte :
xx-zz--
Une fenêtre (comme celle des commentaires) viendra s'ouvrir pour me lister toutes les lignes déjà récapitulées dans la feuil2 pour la chaîne zz.
Un exemple joint :
http://cjoint.com/?mtti4iwLvV
Merci d'avance.
Salut Apitos
Mets ce bout de code dans le VBA de la Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
If Target Like "*--" Then
Do While Sheets("Feuil2").Range("A2").Offset(i, 0).Row <
Sheets("Feuil2").Range("A65535").End(xlUp).Offset(1, 0).Row
If Sheets("Feuil2").Range("A2").Offset(i, 0) Like Mid(Target, 1, Len(Target)
- 2) & "*" Then
Donnée = Donnée & Sheets("Feuil2").Range("A2").Offset(i, 0) & vbLf
End If
i = i + 1
Loop
MsgBox (Donnée)
End If
End If
End Sub
Résultat dans une boîte de dialogue
Celà devrait te convenir
Dis moi !!!!
Bonsoir à tous,
Dans mon exemple, je saisi dans la colonne A, du texte sous forme de :
xx-zz-yy; ou yy est toujours représenté par un nombre qui compte le
changement des valeurs en colonne C.
Par exemple :
Si dans la colonne C on a 50, dans la colonne A je saisirais : xx-zz-1
S'il y'a une autre valeur que 50, pour la même chaîne zz, j'écris dans
A : xx-zz-2
Dans feuil2, il y'a une récapitulation de ce qui est saisie pour la
même chaîne (zz ici).
Parfois, en bas de la page, avant de saisir mon texte, j'aimerais
savoir si la valeur 52 existe déjà pour la chaîne zz, alors en
saisissant deux fois de suite le tiret (--) comme ça en de texte :
xx-zz--
Une fenêtre (comme celle des commentaires) viendra s'ouvrir pour me
lister toutes les lignes déjà récapitulées dans la feuil2 pour la
chaîne zz.
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target Like "*--" Then Do While Sheets("Feuil2").Range("A2").Offset(i, 0).Row < Sheets("Feuil2").Range("A65535").End(xlUp).Offset(1, 0).Row If Sheets("Feuil2").Range("A2").Offset(i, 0) Like Mid(Target, 1, Len(Target) - 2) & "*" Then Donnée = Donnée & Sheets("Feuil2").Range("A2").Offset(i, 0) & vbLf End If i = i + 1 Loop MsgBox (Donnée) End If End If End Sub
Résultat dans une boîte de dialogue
Celà devrait te convenir
Dis moi !!!!
Bonsoir à tous,
Dans mon exemple, je saisi dans la colonne A, du texte sous forme de :
xx-zz-yy; ou yy est toujours représenté par un nombre qui compte le changement des valeurs en colonne C.
Par exemple :
Si dans la colonne C on a 50, dans la colonne A je saisirais : xx-zz-1
S'il y'a une autre valeur que 50, pour la même chaîne zz, j'écris dans A : xx-zz-2
Dans feuil2, il y'a une récapitulation de ce qui est saisie pour la même chaîne (zz ici).
Parfois, en bas de la page, avant de saisir mon texte, j'aimerais savoir si la valeur 52 existe déjà pour la chaîne zz, alors en saisissant deux fois de suite le tiret (--) comme ça en de texte :
xx-zz--
Une fenêtre (comme celle des commentaires) viendra s'ouvrir pour me lister toutes les lignes déjà récapitulées dans la feuil2 pour la chaîne zz.
Un exemple joint :
http://cjoint.com/?mtti4iwLvV
Merci d'avance.
Apitos
Bonsoir FFO,
Merci pour ton code.
Mais comment eviter qu'il ne soit pas sensible à la casse ?
Bon, entre temps j'ai essayé de bricoler quelques lignes pour avoir mes données listées dans une fenetre.
Mais j'aimerais que quelqu'un apporte quelques correction au code.
http://cjoint.com/?mun0yQPIPj
Merci.
Bonsoir FFO,
Merci pour ton code.
Mais comment eviter qu'il ne soit pas sensible à la casse ?
Bon, entre temps j'ai essayé de bricoler quelques lignes pour avoir
mes données listées dans une fenetre.
Mais j'aimerais que quelqu'un apporte quelques correction au code.
Mais comment eviter qu'il ne soit pas sensible à la casse ?
Bon, entre temps j'ai essayé de bricoler quelques lignes pour avoir mes données listées dans une fenetre.
Mais j'aimerais que quelqu'un apporte quelques correction au code.
http://cjoint.com/?mun0yQPIPj
Merci.
FFO
Rebonjours à toi
Pour s'affranchir de la casse ce code dans le VBA de la Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target Like "*--" Then Do While Sheets("Feuil2").Range("A2").Offset(i, 0).Row < Sheets("Feuil2").Range("A65535").End(xlUp).Offset(1, 0).Row If UCase(Sheets("Feuil2").Range("A2").Offset(i, 0)) Like UCase(Mid(Target, 1, Len(Target) - 2)) & "*" Then Donnée = Donnée & Sheets("Feuil2").Range("A2").Offset(i, 0) & vbLf End If i = i + 1 Loop MsgBox (Donnée) End If End If End Sub
Celà devrait convenir
Dis moi !!!!
Bonsoir FFO,
Merci pour ton code.
Mais comment eviter qu'il ne soit pas sensible à la casse ?
Bon, entre temps j'ai essayé de bricoler quelques lignes pour avoir mes données listées dans une fenetre.
Mais j'aimerais que quelqu'un apporte quelques correction au code.
http://cjoint.com/?mun0yQPIPj
Merci.
Rebonjours à toi
Pour s'affranchir de la casse ce code dans le VBA de la Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
If Target Like "*--" Then
Do While Sheets("Feuil2").Range("A2").Offset(i, 0).Row <
Sheets("Feuil2").Range("A65535").End(xlUp).Offset(1, 0).Row
If UCase(Sheets("Feuil2").Range("A2").Offset(i, 0)) Like UCase(Mid(Target,
1, Len(Target) - 2)) & "*" Then
Donnée = Donnée & Sheets("Feuil2").Range("A2").Offset(i, 0) & vbLf
End If
i = i + 1
Loop
MsgBox (Donnée)
End If
End If
End Sub
Celà devrait convenir
Dis moi !!!!
Bonsoir FFO,
Merci pour ton code.
Mais comment eviter qu'il ne soit pas sensible à la casse ?
Bon, entre temps j'ai essayé de bricoler quelques lignes pour avoir
mes données listées dans une fenetre.
Mais j'aimerais que quelqu'un apporte quelques correction au code.
Pour s'affranchir de la casse ce code dans le VBA de la Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then If Target Like "*--" Then Do While Sheets("Feuil2").Range("A2").Offset(i, 0).Row < Sheets("Feuil2").Range("A65535").End(xlUp).Offset(1, 0).Row If UCase(Sheets("Feuil2").Range("A2").Offset(i, 0)) Like UCase(Mid(Target, 1, Len(Target) - 2)) & "*" Then Donnée = Donnée & Sheets("Feuil2").Range("A2").Offset(i, 0) & vbLf End If i = i + 1 Loop MsgBox (Donnée) End If End If End Sub
Celà devrait convenir
Dis moi !!!!
Bonsoir FFO,
Merci pour ton code.
Mais comment eviter qu'il ne soit pas sensible à la casse ?
Bon, entre temps j'ai essayé de bricoler quelques lignes pour avoir mes données listées dans une fenetre.
Mais j'aimerais que quelqu'un apporte quelques correction au code.
http://cjoint.com/?mun0yQPIPj
Merci.
Apitos
Bonsoir FFO,
Oui je crois que UCase fera l'affaire. Merci.
Je vais l'essayé.
Et pour mon fichier joint, quelqu'un l'a pu voir ?
Merci d'avance.
Bonsoir FFO,
Oui je crois que UCase fera l'affaire. Merci.
Je vais l'essayé.
Et pour mon fichier joint, quelqu'un l'a pu voir ?
Et pour mon fichier joint, quelqu'un l'a pu voir ?
Merci d'avance.
FFO
Rebonjour à toi
A cette adresse ton fichier modifié
http://www.cijoint.fr/cij1067413235416.xls
J'attire ton attention sur plusieurs constatation :
Utiliser l'instruction :
[B:B].Find(What:=ch, LookIn:=xlWhole).Activate
Avec la variable "ch" qui doit être une partie de la cellule que représente l'instruction "Target" encore faut il que cette partie soit identifiable pour être recherchée Etant partie intégrante d'un ensemble dont la longueur est fluctuante ainsi que sa propre longueur il est trés difficile voir impossible de définir une procédure pour la cerner de manière précise et fiable
Je me suis donc orienté sur ma manière de procéder tel que je te l'ai proposé dans ma solution en l'intégrant dans ton code avec l'instruction :
If UCase(Target) Like "*" & UCase(Cel) & "*" Then
Si tu te bases sur les données de la colonne B feuil2 pour récupérer les éléments recherchés fait en sorte que ces données les ciblent correctement
Tu recherches :
Bi-Bio-1 --> 50 Bi-Bio-2 --> 48 Bi-Bio-3 --> 52
en t'appuyant sur leur donnée commune colonne B Feuil2 :
Bio
Mais là où le bas blesse c'est que l'élément :
Mbio-Bio-1
possède cette même donnée colonne B Feuil2
Donc ramené lui aussi dans le résultat final
Dernière remarque :
Attention colonne B Feuil2 à ne pas laisser trainer des blancs en fin de chaque cellule préjudiciable au bon fonctionnement de l'ensemble
Espérant avoir répondu à tes attentes
Dis moi !!!!
Bonsoir FFO,
Oui je crois que UCase fera l'affaire. Merci.
Je vais l'essayé.
Et pour mon fichier joint, quelqu'un l'a pu voir ?
Merci d'avance.
Rebonjour à toi
A cette adresse ton fichier modifié
http://www.cijoint.fr/cij1067413235416.xls
J'attire ton attention sur plusieurs constatation :
Utiliser l'instruction :
[B:B].Find(What:=ch, LookIn:=xlWhole).Activate
Avec la variable "ch" qui doit être une partie de la cellule que représente
l'instruction "Target" encore faut il que cette partie soit identifiable pour
être recherchée
Etant partie intégrante d'un ensemble dont la longueur est fluctuante ainsi
que sa propre longueur il est trés difficile voir impossible de définir une
procédure pour la cerner de manière précise et fiable
Je me suis donc orienté sur ma manière de procéder tel que je te l'ai
proposé dans ma solution en l'intégrant dans ton code avec l'instruction :
If UCase(Target) Like "*" & UCase(Cel) & "*" Then
Si tu te bases sur les données de la colonne B feuil2 pour récupérer les
éléments recherchés fait en sorte que ces données les ciblent correctement
Tu recherches :
Bi-Bio-1 --> 50
Bi-Bio-2 --> 48
Bi-Bio-3 --> 52
en t'appuyant sur leur donnée commune colonne B Feuil2 :
Bio
Mais là où le bas blesse c'est que l'élément :
Mbio-Bio-1
possède cette même donnée colonne B Feuil2
Donc ramené lui aussi dans le résultat final
Dernière remarque :
Attention colonne B Feuil2 à ne pas laisser trainer des blancs en fin de
chaque cellule préjudiciable au bon fonctionnement de l'ensemble
Espérant avoir répondu à tes attentes
Dis moi !!!!
Bonsoir FFO,
Oui je crois que UCase fera l'affaire. Merci.
Je vais l'essayé.
Et pour mon fichier joint, quelqu'un l'a pu voir ?
J'attire ton attention sur plusieurs constatation :
Utiliser l'instruction :
[B:B].Find(What:=ch, LookIn:=xlWhole).Activate
Avec la variable "ch" qui doit être une partie de la cellule que représente l'instruction "Target" encore faut il que cette partie soit identifiable pour être recherchée Etant partie intégrante d'un ensemble dont la longueur est fluctuante ainsi que sa propre longueur il est trés difficile voir impossible de définir une procédure pour la cerner de manière précise et fiable
Je me suis donc orienté sur ma manière de procéder tel que je te l'ai proposé dans ma solution en l'intégrant dans ton code avec l'instruction :
If UCase(Target) Like "*" & UCase(Cel) & "*" Then
Si tu te bases sur les données de la colonne B feuil2 pour récupérer les éléments recherchés fait en sorte que ces données les ciblent correctement
Tu recherches :
Bi-Bio-1 --> 50 Bi-Bio-2 --> 48 Bi-Bio-3 --> 52
en t'appuyant sur leur donnée commune colonne B Feuil2 :
Bio
Mais là où le bas blesse c'est que l'élément :
Mbio-Bio-1
possède cette même donnée colonne B Feuil2
Donc ramené lui aussi dans le résultat final
Dernière remarque :
Attention colonne B Feuil2 à ne pas laisser trainer des blancs en fin de chaque cellule préjudiciable au bon fonctionnement de l'ensemble
Espérant avoir répondu à tes attentes
Dis moi !!!!
Bonsoir FFO,
Oui je crois que UCase fera l'affaire. Merci.
Je vais l'essayé.
Et pour mon fichier joint, quelqu'un l'a pu voir ?
Merci d'avance.
Apitos
Bonsoir FFO,
Pour un premier test :
Quand je fini ma saie par un double tiret "--" la fenetre n'apparait pas !!!!
je ne sais pas pourquoi ?
Pour le mot entre tiret -*- (ici Bio), oui j'aimerais que la liste resultante dans la fenetre, contiendra tout les mots contenant ce mot dans la deuxieme feuille :
Quand je fini ma saie par un double tiret "--" la fenetre n'apparait
pas !!!!
je ne sais pas pourquoi ?
Pour le mot entre tiret -*- (ici Bio), oui j'aimerais que la liste
resultante dans la fenetre, contiendra tout les mots contenant ce mot
dans la deuxieme feuille :
Quand je fini ma saie par un double tiret "--" la fenetre n'apparait pas !!!!
je ne sais pas pourquoi ?
Pour le mot entre tiret -*- (ici Bio), oui j'aimerais que la liste resultante dans la fenetre, contiendra tout les mots contenant ce mot dans la deuxieme feuille :
As tu bien saisie dans la bonne Feuille (Feuil1) colonne A ????
Si on as le même Excel ce que je crois on doit faire les même constatations
Vérifies bien celà doit fonctionner
Dis moi !!!
Bonsoir FFO,
Pour un premier test :
Quand je fini ma saie par un double tiret "--" la fenetre n'apparait pas !!!!
je ne sais pas pourquoi ?
Pour le mot entre tiret -*- (ici Bio), oui j'aimerais que la liste resultante dans la fenetre, contiendra tout les mots contenant ce mot dans la deuxieme feuille :
As tu bien saisie dans la bonne Feuille (Feuil1) colonne A ????
Si on as le même Excel ce que je crois on doit faire les même constatations
Vérifies bien celà doit fonctionner
Dis moi !!!
Bonsoir FFO,
Pour un premier test :
Quand je fini ma saie par un double tiret "--" la fenetre n'apparait
pas !!!!
je ne sais pas pourquoi ?
Pour le mot entre tiret -*- (ici Bio), oui j'aimerais que la liste
resultante dans la fenetre, contiendra tout les mots contenant ce mot
dans la deuxieme feuille :
As tu bien saisie dans la bonne Feuille (Feuil1) colonne A ????
Si on as le même Excel ce que je crois on doit faire les même constatations
Vérifies bien celà doit fonctionner
Dis moi !!!
Bonsoir FFO,
Pour un premier test :
Quand je fini ma saie par un double tiret "--" la fenetre n'apparait pas !!!!
je ne sais pas pourquoi ?
Pour le mot entre tiret -*- (ici Bio), oui j'aimerais que la liste resultante dans la fenetre, contiendra tout les mots contenant ce mot dans la deuxieme feuille :
Mais j'ai encore besoin de quelques lignes pour corriger mon code :
Parfois, j'ai une superposition de deux ou plus de fenêtres.
- Comment puis-je vérifier toute existante d'une fenêtre nommée "Commentaire" et la faire supprimer avant d'en créer une autre ? - Pour le teste de ce qui entre les tirets : Comment puis-je approfondir la comparaison pour ne trouver que le texte saisi entre les tirets et éviter toute ressemblance (Ce qui m'a ramené à utiliser la fonction extraction(c) et qui elle même à besoin de quelques correction) ?
Merci.
Bonsoir FFO,
J'ai refais l'essai et ça marche.
Mais j'ai encore besoin de quelques lignes pour corriger mon code :
Parfois, j'ai une superposition de deux ou plus de fenêtres.
- Comment puis-je vérifier toute existante d'une fenêtre nommée
"Commentaire" et la faire supprimer avant d'en créer une autre ?
- Pour le teste de ce qui entre les tirets : Comment puis-je
approfondir la comparaison pour ne trouver que le texte saisi entre
les tirets et éviter toute ressemblance (Ce qui m'a ramené à utiliser
la fonction extraction(c) et qui elle même à besoin de quelques
correction) ?
Mais j'ai encore besoin de quelques lignes pour corriger mon code :
Parfois, j'ai une superposition de deux ou plus de fenêtres.
- Comment puis-je vérifier toute existante d'une fenêtre nommée "Commentaire" et la faire supprimer avant d'en créer une autre ? - Pour le teste de ce qui entre les tirets : Comment puis-je approfondir la comparaison pour ne trouver que le texte saisi entre les tirets et éviter toute ressemblance (Ce qui m'a ramené à utiliser la fonction extraction(c) et qui elle même à besoin de quelques correction) ?
Merci.
Apitos
Re,
Pour la superposition des fenêtres, vous pouvez remarquez dans les cellule B8 et B10 de Feuil1, deux fenêtres sous forme de points (Listes vides).
Re,
Pour la superposition des fenêtres, vous pouvez remarquez dans les
cellule B8 et B10 de Feuil1, deux fenêtres sous forme de points
(Listes vides).