Petite modification dans macro

ninanani

XLDnaute Occasionnel
Bonjour a tous.

J ai la macro suivante :(donnee par Pierre Jean, que je remercie d ailleur)

Sub cherche()
'balayage de la colonne A de la feuille 1 de la ligne 2 a la derniere non vide
For n = 2 To Sheets("Simple Invoice").Range("B65536").Range("B11").Row
'recherche de la valeur dans la colonne 1 de la feuille 2 Set c = Sheets("stock").Columns(1).Find(Sheets("Simple Invoice").Range("B11" & n).Value, LookIn:=xlValues, lookat:=xlWhole)
'Si touvé
If Not c Is Nothing Then
'copie de la zone B :E meme ligne que trouvée dans la feuille 1 colonne B 'Sheets("Sheet1").Range("C" & n) = c.Offset(0, 2)
Sheets("stock").Range("B" & c.Row & ":EB" & c.Row).Copy Destination:=Sheets("Simple Invoice").Range("B" & n)
End If
Next n
End Sub


J aimerais que la phrase ecrite en rouge soit transformer pour que cela ne fasse plus qu un balayage sur une cellule, feuille "Simple Invoice", range ("B11")

J espere que mon probleme vient de la...
J espere aussi avoir ete claire!

Je vous remerci de vos reponses..
Bonne journee
 

alex67800

XLDnaute Impliqué
Re : Petite modification dans macro

Bonjour ninani,

Peut-être comme ceci:
Code:
For n = 2 To Sheets("Simple Invoice").Range("B11").Row

A tester, mais cela partira toujours de la feuil2 à Simple Invoice.

En même temps pas sur d'avoir tout compris je sors du boulot.
 

ninanani

XLDnaute Occasionnel
Re : Petite modification dans macro

Re, merci de ta reponse.

J avais deja teste cela, mais le probleme c est que cela m efface le contenu de ma cellule B11.

Je vais essayer de t expliquer clairement ce que je souhaiterai et peut etre pourras tu me dire ce qui cloche dans ma macro.

J ai de nombreuse information stockee dans ma feuille "stock", sur un meme ligne (par exemple de B2 a EB2). Sur la colone A, j ai une liste de nom. Un nom est relie aux informations sur la meme ligne.
Sur ma feuille "Simple Invoice", dans la cellule B11 j ai un nom. J aimerais que lorsque je choisi CE nom, ma macro aille me cherche toutes les informations dans ma feuille "stock" qui sont sur la meme ligne que ce nom. POur les placer dans differente cellule qui ne seront pas forcement a cote ( sur le feuille "Simple Invoice"

Voili voilo
Est ce claire?
Merci de ton aide.
 

ninanani

XLDnaute Occasionnel
Re : Petite modification dans macro

Re James

Oui justement j ai essayer de la modifier en fonction de ce que je souhaite, mais le probleme est exactement cela, elle ne fonctionne pas.
C est pour cela que je mettais ce que je souhaitai faire et que je vous demandais de m aider a trouver qu est ce qui clocher dans ma macro. Peut etre bcp de chose, surement meme....

Merci de ton aide
 

James007

XLDnaute Barbatruc
Re : Petite modification dans macro

Au moins on est d'accord là dessus ...
Comme je ne connais pas ton fichier, peux tu comme point de départ indiquer la macro d'origine ... celle qui fonctionne ...
Cela me permettra de te faire ta modification ...

A +
 

ninanani

XLDnaute Occasionnel
Re : Petite modification dans macro

Re James,
Je te met en fichier joint un exemple de mon fichier. Avec la macro qui fonctionne.
Seulement la macro fonctionne seulement pour la date, j aimerais egalement ramener le numero, et les deux description dans les bonnes cellules.
Numero : C10
Description 1 : D14
Description 2 :D15

J espere que c est bien claire.

En sachant que sur mon fichier complet j ai bcp plus dinformation a ramener, je completerais donc la macro.

Merci
 

Pièces jointes

  • PETIT EXEMPLE premier.xls
    31.5 KB · Affichages: 40
  • PETIT EXEMPLE premier.xls
    31.5 KB · Affichages: 43
  • PETIT EXEMPLE premier.xls
    31.5 KB · Affichages: 43

James007

XLDnaute Barbatruc
Re : Petite modification dans macro

Franchement ... on est dans de l'équilibrisme ...
Je crois avoir deviné tes manipulations
Voilà sans doute le code que tu cherches ...
Code:
Sub cherche()
Dim n As Integer
Dim c As Range
For n = 2 To Sheets("Simple Invoice").Range("B65536").End(xlUp).Row
Set c = Sheets("Stock").Columns(1).Find(Sheets("Simple Invoice").Range("B" & n).Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not c Is Nothing Then
       Sheets("stock").Range("B" & c.Row & ":EB" & c.Row).Copy Destination:=Sheets("Simple Invoice").Range("B" & n)
    End If
Next n
End Sub

A +
 

ninanani

XLDnaute Occasionnel
Re : Petite modification dans macro

Merci.

J ai fait une petite modification sur le fichier.
Avec le fichier joint tu as du mal a comprendre ce que je souhaite?

Serait il possible que tu modifie la macro dans le fichier joint? Avec les informations du fichier joint. Pas celle avec "Simple Invoice" et "stock".

la macro suivante:

Sub cherche()
For n = 2 To Sheets("Sheet1").Range("A65536").End(xlUp).Row
Set c = Sheets("Sheet2").Columns(1).Find(Sheets("Sheet1").Range("A" & n).Value, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
Sheets("Sheet1").Range("C" & n) = c.Offset(0, 2)
End If
Next n
End Sub



Merci bcp
 

ninanani

XLDnaute Occasionnel
Re : Petite modification dans macro

Yop effectivement j ai oublie de le joindre.

Enfin c est juste une mini modif, j ai efface une cellule qui pouvait preter a confusion.

Je te remercie de ton aide
 

Pièces jointes

  • PETIT EXEMPLE premier.xls
    27.5 KB · Affichages: 42
  • PETIT EXEMPLE premier.xls
    27.5 KB · Affichages: 41
  • PETIT EXEMPLE premier.xls
    27.5 KB · Affichages: 40

James007

XLDnaute Barbatruc
Re : Petite modification dans macro

Comme je fais plusieurs choses en même temps ... je n'avais pris le temps de comprendre ta question de base ...

En fait, tu n'as absolument pas besoin de macro ... une seule et simple formule fait le boulot ...

A +
 

Pièces jointes

  • NinaNani.xls
    22.5 KB · Affichages: 40

ninanani

XLDnaute Occasionnel
Re : Petite modification dans macro

Re James, merci pour ca.

J ai aussi oublie de preciser quelque chose, c est que dans mon fichier complet, j ai deja des formules dans pratiquement toute les cellules et c etait pour ca que je souhaitais avoir une macro. Que je puisse choisir lorsque je veux que la macro me ramene ces informations.

Desole de ce manque de precision au depart.
 

James007

XLDnaute Barbatruc
Re : Petite modification dans macro

Je ne comprends pas ce qui peut justifier que tu veuilles que les informations ne se mettent pas à jour automatiquement par une simple formule ... (dans une grande ou petite feuille ... complète ou incomplète)


Mais, si tu tiens vraiment à cela, tu as encore la possibilité de demander à Excel ( Outils Options) de ne recalculer ta feuille que lorsque tu le demandes ... en utilisant la touche F9 ...

A +
 

Discussions similaires

Statistiques des forums

Discussions
312 838
Messages
2 092 668
Membres
105 482
dernier inscrit
Eric.FKF