![]() |
|
Forum
|
|
|||||||
![]() |
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#1 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: décembre 2007
Messages: 33
|
Bonjour à tous,
Suite à mon post : http://www.excel-downloads.com/forum...recherche.html j'ai donc créé une macro de recherche, qui finalement marche, dans le fichier de test que j'avais joint sur ce poste précédent, mais lorsque je la transpose dans mon fichier original, elle ne marche pas...j'entends par là qu'elle tourne correctement mais sans venir m'insérer le résultat de ma recherche (elle s'arrête dans ligne 12 de la feuille où elle était sensé venir insérer mes valeurs trouvées...) Pourtant, entre mon fichier de test et mon fichier original, seules les valeurs à l'intérieur des cellules et le nombre de ligne sont différents... J'ai à près tout tenté ; j'ai même pensé qu'une autre macro (présente dans mon fichier original) venait court-circuité ma macro; c'est pas le cas... Bref, là, j'ai plus trop d'idées... Si vous pouviez me donner un coup de main... Un grand merci par avance. Gwad063. PS : les fichiers de test sont dans le post du dessus... |
|
|
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
XLDnaute Accro
Date d'inscription: décembre 2005
Messages: 1 421
|
Bonsoir
Ci joint le fichier avec la macro modifiée. Pour faciliter la mise au point j'ai décomposé des variables. Comme je n'ai pas tout compris comme par exemple l' instruction I=I+1 i étant la variable de la boucle For next, les feuilles à utiliser ; il faudra la reprendre. JP |
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: décembre 2007
Messages: 33
|
Désolé pour le retour tardif...
Un grand merci JP14! Je vais tester ça et voir ce que ça donne, histoire de te confirmer que c'est bon pour moi. Effectivement, je me suis rendu compte que mon i=i+1 n'avait rien à faire ici vu que j'ai ma boucle next...tout comme pas mal de choses qui n'était pas forcément utiles ("cell.offset(0,0).row" par exemple ou "End(xlup).column") Bref, pas mal de choses à revoir ![]() En tout cas, encore mille mercis; ça devrait le faire. |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: décembre 2007
Messages: 33
|
jp14,
j'ai donc tester ta macro; après avoir déplacé la macro du module vers ma feuille 1 (Transaction par Rôles) vu que c'est là qu'il y a le bouton etavoir changé : ".Cells(k, 1) = Ws2.Range("B" & I)" par ".Cells(k, 1) = Ws3.Range("B" & I)" (la valeur étant la même), cela marchait dans le fichier de test que tu m'avais envoyé; Mais je me retrouve avec le même problème une fois que je la transpose vers mon fichier original : la macro tourne mais une fois terminée, je n'ai aucune valeur dans ma feuille "Transactions Données de Base"; pourtant, les fichiers sont structurés exactement de la même façon, seules les valeurs à l'intérieur de mes cellules et le nombre de ligne diffèrent... Les seules différences, c'est qu'il y a 2 feuilles de plus dans mon fichier original "Proposition finale Donnees de Base version 1" (pour l'instant vierge mais que je compte compléter un fois mon macro éxécutée) et une autre macro déjà présente dans un module; et j'ai également une macro présente dans mon fichier "Données de base"; mais j'ai essayé en les enlevant, ça ne marche toujours pas... Si tu as éventuellement quelques idées sur la source du problème (où toute âme charitable qui passera par là...); là, je commence un peu à désespérer... En tout cas, merci pour le temps déjà consacré sur mon problème. |
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Accro
Date d'inscription: décembre 2005
Messages: 1 421
|
Bonjour
Une piste Exécuter la macro en pas à pas en vérifiant au niveau de chaque ligne les valeurs dans les données et ainsi vérifier si le cheminement est correct. Il faut poser des points d'arrêt pour aller à l'essentiel en particulier lorsque l'on a controlé une partie. JP |
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: décembre 2007
Messages: 33
|
JP,
je l'ai fait, j'ai mis des espions à mes variables I, J et cell: et j'ai exécuté pas à pas avec F8 : pour chaque I, il cherche dans la plage B (ma variable cell) de Master Datas, seulement même quand les valeurs sont égales, il ne se passe rien, il n'incrémente pas k... et là, je comprends pas , ça marchait dans le fichier de test... |
|
|
|
|
|
#7 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: décembre 2007
Messages: 33
|
En fait, visiblement, il ne ferait pas le :
If Ws3.Range("B" & I) = cell Then With Ws1 .Cells(k, 1) = Ws3.Range("B" & I) .Cells(k, 2) = Ws2.Cells(cell.Offset(0, 0).Row, cell.Offset(0, -1).End(xlUp).Column).Value End With k = k + 1 End If Gwad. |
|
|
|
|
|
#10 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: décembre 2007
Messages: 33
|
Bonsoir à tous, petit mail histoire de clore ce post : j'ai trouvé d'où venait mon problème : effectivement: il y avait des espaces après mes valeurs dans mon fichier de donnée de base
; j'ai mis le temps à les voir mais cette fois, c'est bon...Merci JP pour ton aide précieuse. Bonne soirée à tous. |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| fichier original | Alain Dutoit | Forum Excel | 3 | 16/04/2006 10h18 |
| Récupérer dans un fichier xls par une macro un champ d'un autre fichier xls | Pierre | Forum Excel Downloads - Archives | 2 | 22/09/2004 09h40 |
| COPIER DANS UN AUTRE FICHIER EN SUPPRIMANT LES MACRO ASSOCIEES AU FICHIER SOURCE | CC_TiGeR | Forum Excel Downloads - Archives | 2 | 16/04/2004 18h34 |
| Interdire l'ecrasement du fichier original ! | Creepy | Forum Excel Downloads - Archives | 1 | 27/01/2004 16h25 |
| Format du papier, Excel-97, peut-on modifier un fichier ORIGINAL d'EXCEL | BIGMARC | Forum Excel Downloads - Archives | 2 | 25/08/2003 11h28 |