Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VP

11 réponses
Avatar
Richard
J'ai une macro qui fonctionne bien mais seulement pour une commande. Je ne
sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider ce
serait grandement apprécié

-- Dim id, ligne As Integer

Worksheets("Info").Cells(18, 20).Copy
id = Worksheets("Info").Cells(2, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 15).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:=False, Transpose:=False
'2e commande

Worksheets("Info").Cells(3, 20).Copy
id = Worksheets("Info").Cells(3, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 16).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:=False, Transpose:=False
GoTo fin
End If
ligne = ligne + 1
Wend
End With

fin: Worksheets("Info").Activate
Range("B2").Select

10 réponses

1 2
Avatar
Daniel.C
Bonjour.
A mon avis, le problème vient de tes données. Peux-tu mettre ton
classeur sur www.cjoint.com en effaçant les données confidentielles et
poster ici l'adresse générée ?
Cordialement.
Daniel

J'ai une macro qui fonctionne bien mais seulement pour une commande. Je ne
sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider ce
serait grandement apprécié

-- Dim id, ligne As Integer

Worksheets("Info").Cells(18, 20).Copy
id = Worksheets("Info").Cells(2, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 15).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:úlse, Transpose:úlse
'2e commande

Worksheets("Info").Cells(3, 20).Copy
id = Worksheets("Info").Cells(3, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 16).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:úlse, Transpose:úlse
GoTo fin
End If
ligne = ligne + 1
Wend
End With

fin: Worksheets("Info").Activate
Range("B2").Select


Avatar
Richard
Bonjour Daniel

En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger cette
macro pour qu'elle soit encore plus efficace.

J'aimerais ajouter une variante à cette macro
Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
Donc la macro ci-joint est celle de la formation #2
Pour les autres formations ce qui change sont où coller les informations
Formation #3
c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
Formation #4
c.Offset(0, 18) = val2
c.Offset(0, 19) = val3
c.Offset(0, 20) = val4
Formation #5
c.Offset(0, 21) = val2
c.Offset(0, 22) = val3
c.Offset(0, 23) = val4

Voici la macro corrigé

Dim c As Range, val1, val2, val3, val4

With Worksheets("Info")
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

End With

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
If c = val1 Then
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4

End If
Next c
End With

Worksheets("Info").Activate
Range("B2").Select

End Sub




--
Nitrof


"Daniel.C" a écrit :

Bonjour.
A mon avis, le problème vient de tes données. Peux-tu mettre ton
classeur sur www.cjoint.com en effaçant les données confidentielles et
poster ici l'adresse générée ?
Cordialement.
Daniel

> J'ai une macro qui fonctionne bien mais seulement pour une commande. Je ne
> sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider ce
> serait grandement apprécié
>
> -- Dim id, ligne As Integer
>
> Worksheets("Info").Cells(18, 20).Copy
> id = Worksheets("Info").Cells(2, 19).Value
> With Worksheets("Membres")
> .Activate
> ligne = 10
> While .Cells(ligne, 1) <> ""
> If .Cells(ligne, 1) = id Then
> .Cells(ligne, 15).Select
> Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
> SkipBlanks:úlse, Transpose:úlse
> '2e commande
>
> Worksheets("Info").Cells(3, 20).Copy
> id = Worksheets("Info").Cells(3, 19).Value
> With Worksheets("Membres")
> .Activate
> ligne = 10
> While .Cells(ligne, 1) <> ""
> If .Cells(ligne, 1) = id Then
> .Cells(ligne, 16).Select
> Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
> SkipBlanks:úlse, Transpose:úlse
> GoTo fin
> End If
> ligne = ligne + 1
> Wend
> End With
>
> fin: Worksheets("Info").Activate
> Range("B2").Select





Avatar
Daniel.C
Bonjour.
Si j'ai bien compris :

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 * val1 * 3) = val2
c.Offset(0, 7 * val1 * 3) = val3
c.Offset(0, 8 * val1 * 3) = val4

Next c
End With

Daniel

Bonjour Daniel

En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger cette
macro pour qu'elle soit encore plus efficace.

J'aimerais ajouter une variante à cette macro
Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
Donc la macro ci-joint est celle de la formation #2
Pour les autres formations ce qui change sont où coller les informations
Formation #3
c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
Formation #4
c.Offset(0, 18) = val2
c.Offset(0, 19) = val3
c.Offset(0, 20) = val4
Formation #5
c.Offset(0, 21) = val2
c.Offset(0, 22) = val3
c.Offset(0, 23) = val4

Voici la macro corrigé

Dim c As Range, val1, val2, val3, val4

With Worksheets("Info")
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

End With

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
If c = val1 Then
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4

End If
Next c
End With

Worksheets("Info").Activate
Range("B2").Select

End Sub




--
Nitrof


"Daniel.C" a écrit :

Bonjour.
A mon avis, le problème vient de tes données. Peux-tu mettre ton
classeur sur www.cjoint.com en effaçant les données confidentielles et
poster ici l'adresse générée ?
Cordialement.
Daniel

J'ai une macro qui fonctionne bien mais seulement pour une commande. Je ne
sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider ce
serait grandement apprécié

-- Dim id, ligne As Integer

Worksheets("Info").Cells(18, 20).Copy
id = Worksheets("Info").Cells(2, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 15).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:úlse, Transpose:úlse
'2e commande

Worksheets("Info").Cells(3, 20).Copy
id = Worksheets("Info").Cells(3, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 16).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks:úlse, Transpose:úlse
GoTo fin
End If
ligne = ligne + 1
Wend
End With

fin: Worksheets("Info").Activate
Range("B2").Select









Avatar
Daniel.C
Plutôt :
With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 + val1 * 3) = val2
c.Offset(0, 7 + val1 * 3) = val3
c.Offset(0, 8 + val1 * 3) = val4

Next c
End With

Daniel

Bonjour.
Si j'ai bien compris :

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 * val1 * 3) = val2
c.Offset(0, 7 * val1 * 3) = val3
c.Offset(0, 8 * val1 * 3) = val4

Next c
End With

Daniel

Bonjour Daniel

En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
cette macro pour qu'elle soit encore plus efficace.

J'aimerais ajouter une variante à cette macro
Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
Donc la macro ci-joint est celle de la formation #2
Pour les autres formations ce qui change sont où coller les informations
Formation #3 c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
Formation #4 c.Offset(0, 18) = val2
c.Offset(0, 19) = val3
c.Offset(0, 20) = val4
Formation #5
c.Offset(0, 21) = val2
c.Offset(0, 22) = val3
c.Offset(0, 23) = val4

Voici la macro corrigé

Dim c As Range, val1, val2, val3, val4

With Worksheets("Info")
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

End With

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
If c = val1 Then
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4

End If
Next c
End With

Worksheets("Info").Activate
Range("B2").Select

End Sub




-- Nitrof


"Daniel.C" a écrit :

Bonjour.
A mon avis, le problème vient de tes données. Peux-tu mettre ton classeur
sur www.cjoint.com en effaçant les données confidentielles et poster ici
l'adresse générée ?
Cordialement.
Daniel

J'ai une macro qui fonctionne bien mais seulement pour une commande. Je
ne sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider
ce serait grandement apprécié

-- Dim id, ligne As Integer
Worksheets("Info").Cells(18, 20).Copy
id = Worksheets("Info").Cells(2, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 15).Select
Selection.PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
'2e commande
Worksheets("Info").Cells(3, 20).Copy
id = Worksheets("Info").Cells(3, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 16).Select
Selection.PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
GoTo fin
End If
ligne = ligne + 1
Wend
End With
fin: Worksheets("Info").Activate
Range("B2").Select










Avatar
Richard
Merci de ton aide mais ça fonctionne pas.

Comme j'ai expliqué au préalable, ma macro fonctionne correctement,
cependant je dois avoir plusieur bouton pour lancer la formule.
Je donne 5 formations/an (avril, mai, juin, sept & nov) que j''identifie de
1 à 5 (information situé dans ma feuille "Info en (4,19))
Donc avec le même bouton, j'aimerais pouvoir lance la macro selon la date et
coller les infos dans les cellules suivantes
Formation 2
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4
Formation 3
c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
etc...
Les valeurs où je receuille les informations ne changent pas à savoir:
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

J'espère que ces informations vous serons utiles

--
Richard


"Daniel.C" a écrit :

Plutôt :
With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 + val1 * 3) = val2
c.Offset(0, 7 + val1 * 3) = val3
c.Offset(0, 8 + val1 * 3) = val4

Next c
End With

Daniel

> Bonjour.
> Si j'ai bien compris :
>
> With Worksheets("Membres")
> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
> c.Offset(0, 6 * val1 * 3) = val2
> c.Offset(0, 7 * val1 * 3) = val3
> c.Offset(0, 8 * val1 * 3) = val4
>
> Next c
> End With
>
> Daniel
>
>> Bonjour Daniel
>>
>> En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
>> cette macro pour qu'elle soit encore plus efficace.
>>
>> J'aimerais ajouter une variante à cette macro
>> Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
>> Donc la macro ci-joint est celle de la formation #2
>> Pour les autres formations ce qui change sont où coller les informations
>> Formation #3 c.Offset(0, 15) = val2
>> c.Offset(0, 16) = val3
>> c.Offset(0, 17) = val4
>> Formation #4 c.Offset(0, 18) = val2
>> c.Offset(0, 19) = val3
>> c.Offset(0, 20) = val4
>> Formation #5
>> c.Offset(0, 21) = val2
>> c.Offset(0, 22) = val3
>> c.Offset(0, 23) = val4
>>
>> Voici la macro corrigé
>>
>> Dim c As Range, val1, val2, val3, val4
>>
>> With Worksheets("Info")
>> val1 = .Cells(4, 14).Value
>> val2 = .Cells(18, 20) 'présence
>> val3 = .Cells(3, 19) 'méthode de paiement
>> val4 = .Cells(21, 11) 'coût
>>
>> End With
>>
>> With Worksheets("Membres")
>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>> If c = val1 Then
>> c.Offset(0, 12) = val2
>> c.Offset(0, 13) = val3
>> c.Offset(0, 14) = val4
>>
>> End If
>> Next c
>> End With
>>
>> Worksheets("Info").Activate
>> Range("B2").Select
>>
>> End Sub
>>
>>
>>
>>
>> -- Nitrof
>>
>>
>> "Daniel.C" a écrit :
>>
>>> Bonjour.
>>> A mon avis, le problème vient de tes données. Peux-tu mettre ton classeur
>>> sur www.cjoint.com en effaçant les données confidentielles et poster ici
>>> l'adresse générée ?
>>> Cordialement.
>>> Daniel
>>>
>>>> J'ai une macro qui fonctionne bien mais seulement pour une commande. Je
>>>> ne sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider
>>>> ce serait grandement apprécié
>>>>
>>>> -- Dim id, ligne As Integer
>>>> Worksheets("Info").Cells(18, 20).Copy
>>>> id = Worksheets("Info").Cells(2, 19).Value
>>>> With Worksheets("Membres")
>>>> .Activate
>>>> ligne = 10
>>>> While .Cells(ligne, 1) <> ""
>>>> If .Cells(ligne, 1) = id Then
>>>> .Cells(ligne, 15).Select
>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>> '2e commande
>>>> Worksheets("Info").Cells(3, 20).Copy
>>>> id = Worksheets("Info").Cells(3, 19).Value
>>>> With Worksheets("Membres")
>>>> .Activate
>>>> ligne = 10
>>>> While .Cells(ligne, 1) <> ""
>>>> If .Cells(ligne, 1) = id Then
>>>> .Cells(ligne, 16).Select
>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>> GoTo fin
>>>> End If
>>>> ligne = ligne + 1
>>>> Wend
>>>> End With
>>>> fin: Worksheets("Info").Activate
>>>> Range("B2").Select
>>>
>>>





Avatar
Daniel.C
Ce que je comprends :
Pour la formation 1 :
c.Offset(0, 9) = val2
Pour la formation 2 :
c.Offset(0, 12) = val2
Pour la formation 3 :
c.Offset(0, 15) = val2
Soit un décalage de 3 colonnes.
Val1 contenant le numéro de la formation, de 1 à 5
j'ai écrit :
c.Offset(0, 6 + val1 * 3) = val2
et de même pour val3 et val4.
Ce qui me semble convenir à toutes les formations ?
Daniel


Merci de ton aide mais ça fonctionne pas.

Comme j'ai expliqué au préalable, ma macro fonctionne correctement,
cependant je dois avoir plusieur bouton pour lancer la formule.
Je donne 5 formations/an (avril, mai, juin, sept & nov) que j''identifie de
1 à 5 (information situé dans ma feuille "Info en (4,19))
Donc avec le même bouton, j'aimerais pouvoir lance la macro selon la date et
coller les infos dans les cellules suivantes
Formation 2
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4
Formation 3
c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
etc...
Les valeurs où je receuille les informations ne changent pas à savoir:
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

J'espère que ces informations vous serons utiles

--
Richard


"Daniel.C" a écrit :

Plutôt :
With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 + val1 * 3) = val2
c.Offset(0, 7 + val1 * 3) = val3
c.Offset(0, 8 + val1 * 3) = val4

Next c
End With

Daniel

Bonjour.
Si j'ai bien compris :

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 * val1 * 3) = val2
c.Offset(0, 7 * val1 * 3) = val3
c.Offset(0, 8 * val1 * 3) = val4

Next c
End With

Daniel

Bonjour Daniel

En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
cette macro pour qu'elle soit encore plus efficace.

J'aimerais ajouter une variante à cette macro
Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
Donc la macro ci-joint est celle de la formation #2
Pour les autres formations ce qui change sont où coller les informations
Formation #3 c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
Formation #4 c.Offset(0, 18) = val2
c.Offset(0, 19) = val3
c.Offset(0, 20) = val4
Formation #5
c.Offset(0, 21) = val2
c.Offset(0, 22) = val3
c.Offset(0, 23) = val4

Voici la macro corrigé

Dim c As Range, val1, val2, val3, val4

With Worksheets("Info")
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

End With

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
If c = val1 Then
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4

End If
Next c
End With

Worksheets("Info").Activate
Range("B2").Select

End Sub




-- Nitrof


"Daniel.C" a écrit :

Bonjour.
A mon avis, le problème vient de tes données. Peux-tu mettre ton classeur
sur www.cjoint.com en effaçant les données confidentielles et poster ici
l'adresse générée ?
Cordialement.
Daniel

J'ai une macro qui fonctionne bien mais seulement pour une commande. Je
ne sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider
ce serait grandement apprécié

-- Dim id, ligne As Integer
Worksheets("Info").Cells(18, 20).Copy
id = Worksheets("Info").Cells(2, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 15).Select
Selection.PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
'2e commande
Worksheets("Info").Cells(3, 20).Copy
id = Worksheets("Info").Cells(3, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 16).Select
Selection.PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
GoTo fin
End If
ligne = ligne + 1
Wend
End With
fin: Worksheets("Info").Activate
Range("B2").Select

















Avatar
Richard
Si je compend bien, les valeurs vont se coller au 3 colonnes et c'est pas
exactement ce que je cherche.
Si (Info 4,19)=valeur 2 'qui est la 2e formation
then
cherche val1 (Info 4,14) 'qui est le # membre
copie val2= Cells(18,20)
Val3= Cells(3,19)
Val4 Îlls(21,11)
'Ces valeurs sont à être collé dans feuilles "Membres" qui cherche Val1
Offset(0,12)=Val2
Offset(0,13)=Val3
Offset(0,14)=Val4

Si (Info4,19)=3
Cherche les mêmes valeur que précédent et coller dans "Membres"
Offset(0,15)=Val2
Offset(0,16)=Val3
Offset(0,17)=Val4

et ainsi de suite jusqu'à (Si Info4,19)=5





--
Nitrof


"Daniel.C" a écrit :

Ce que je comprends :
Pour la formation 1 :
c.Offset(0, 9) = val2
Pour la formation 2 :
c.Offset(0, 12) = val2
Pour la formation 3 :
c.Offset(0, 15) = val2
Soit un décalage de 3 colonnes.
Val1 contenant le numéro de la formation, de 1 à 5
j'ai écrit :
c.Offset(0, 6 + val1 * 3) = val2
et de même pour val3 et val4.
Ce qui me semble convenir à toutes les formations ?
Daniel


> Merci de ton aide mais ça fonctionne pas.
>
> Comme j'ai expliqué au préalable, ma macro fonctionne correctement,
> cependant je dois avoir plusieur bouton pour lancer la formule.
> Je donne 5 formations/an (avril, mai, juin, sept & nov) que j''identifie de
> 1 à 5 (information situé dans ma feuille "Info en (4,19))
> Donc avec le même bouton, j'aimerais pouvoir lance la macro selon la date et
> coller les infos dans les cellules suivantes
> Formation 2
> c.Offset(0, 12) = val2
> c.Offset(0, 13) = val3
> c.Offset(0, 14) = val4
> Formation 3
> c.Offset(0, 15) = val2
> c.Offset(0, 16) = val3
> c.Offset(0, 17) = val4
> etc...
> Les valeurs où je receuille les informations ne changent pas à savoir:
> val1 = .Cells(4, 14).Value
> val2 = .Cells(18, 20) 'présence
> val3 = .Cells(3, 19) 'méthode de paiement
> val4 = .Cells(21, 11) 'coût
>
> J'espère que ces informations vous serons utiles
>
> --
> Richard
>
>
> "Daniel.C" a écrit :
>
>> Plutôt :
>> With Worksheets("Membres")
>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>> c.Offset(0, 6 + val1 * 3) = val2
>> c.Offset(0, 7 + val1 * 3) = val3
>> c.Offset(0, 8 + val1 * 3) = val4
>>
>> Next c
>> End With
>>
>> Daniel
>>
>>> Bonjour.
>>> Si j'ai bien compris :
>>>
>>> With Worksheets("Membres")
>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>> c.Offset(0, 6 * val1 * 3) = val2
>>> c.Offset(0, 7 * val1 * 3) = val3
>>> c.Offset(0, 8 * val1 * 3) = val4
>>>
>>> Next c
>>> End With
>>>
>>> Daniel
>>>
>>>> Bonjour Daniel
>>>>
>>>> En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
>>>> cette macro pour qu'elle soit encore plus efficace.
>>>>
>>>> J'aimerais ajouter une variante à cette macro
>>>> Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
>>>> Donc la macro ci-joint est celle de la formation #2
>>>> Pour les autres formations ce qui change sont où coller les informations
>>>> Formation #3 c.Offset(0, 15) = val2
>>>> c.Offset(0, 16) = val3
>>>> c.Offset(0, 17) = val4
>>>> Formation #4 c.Offset(0, 18) = val2
>>>> c.Offset(0, 19) = val3
>>>> c.Offset(0, 20) = val4
>>>> Formation #5
>>>> c.Offset(0, 21) = val2
>>>> c.Offset(0, 22) = val3
>>>> c.Offset(0, 23) = val4
>>>>
>>>> Voici la macro corrigé
>>>>
>>>> Dim c As Range, val1, val2, val3, val4
>>>>
>>>> With Worksheets("Info")
>>>> val1 = .Cells(4, 14).Value
>>>> val2 = .Cells(18, 20) 'présence
>>>> val3 = .Cells(3, 19) 'méthode de paiement
>>>> val4 = .Cells(21, 11) 'coût
>>>>
>>>> End With
>>>>
>>>> With Worksheets("Membres")
>>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>>> If c = val1 Then
>>>> c.Offset(0, 12) = val2
>>>> c.Offset(0, 13) = val3
>>>> c.Offset(0, 14) = val4
>>>>
>>>> End If
>>>> Next c
>>>> End With
>>>>
>>>> Worksheets("Info").Activate
>>>> Range("B2").Select
>>>>
>>>> End Sub
>>>>
>>>>
>>>>
>>>>
>>>> -- Nitrof
>>>>
>>>>
>>>> "Daniel.C" a écrit :
>>>>
>>>>> Bonjour.
>>>>> A mon avis, le problème vient de tes données. Peux-tu mettre ton classeur
>>>>> sur www.cjoint.com en effaçant les données confidentielles et poster ici
>>>>> l'adresse générée ?
>>>>> Cordialement.
>>>>> Daniel
>>>>>
>>>>>> J'ai une macro qui fonctionne bien mais seulement pour une commande. Je
>>>>>> ne sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider
>>>>>> ce serait grandement apprécié
>>>>>>
>>>>>> -- Dim id, ligne As Integer
>>>>>> Worksheets("Info").Cells(18, 20).Copy
>>>>>> id = Worksheets("Info").Cells(2, 19).Value
>>>>>> With Worksheets("Membres")
>>>>>> .Activate
>>>>>> ligne = 10
>>>>>> While .Cells(ligne, 1) <> ""
>>>>>> If .Cells(ligne, 1) = id Then
>>>>>> .Cells(ligne, 15).Select
>>>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>>>> '2e commande
>>>>>> Worksheets("Info").Cells(3, 20).Copy
>>>>>> id = Worksheets("Info").Cells(3, 19).Value
>>>>>> With Worksheets("Membres")
>>>>>> .Activate
>>>>>> ligne = 10
>>>>>> While .Cells(ligne, 1) <> ""
>>>>>> If .Cells(ligne, 1) = id Then
>>>>>> .Cells(ligne, 16).Select
>>>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>>>> GoTo fin
>>>>>> End If
>>>>>> ligne = ligne + 1
>>>>>> Wend
>>>>>> End With
>>>>>> fin: Worksheets("Info").Activate
>>>>>> Range("B2").Select
>>>>>
>>>>>
>>
>>
>>





Avatar
Richard
Question
Où prends-tu la valeur Info(4,19) qui est la référence du # de formation,
c'est ça que je ne parviens pas à comprendre
--
Nitrof


"Daniel.C" a écrit :

Ce que je comprends :
Pour la formation 1 :
c.Offset(0, 9) = val2
Pour la formation 2 :
c.Offset(0, 12) = val2
Pour la formation 3 :
c.Offset(0, 15) = val2
Soit un décalage de 3 colonnes.
Val1 contenant le numéro de la formation, de 1 à 5
j'ai écrit :
c.Offset(0, 6 + val1 * 3) = val2
et de même pour val3 et val4.
Ce qui me semble convenir à toutes les formations ?
Daniel


> Merci de ton aide mais ça fonctionne pas.
>
> Comme j'ai expliqué au préalable, ma macro fonctionne correctement,
> cependant je dois avoir plusieur bouton pour lancer la formule.
> Je donne 5 formations/an (avril, mai, juin, sept & nov) que j''identifie de
> 1 à 5 (information situé dans ma feuille "Info en (4,19))
> Donc avec le même bouton, j'aimerais pouvoir lance la macro selon la date et
> coller les infos dans les cellules suivantes
> Formation 2
> c.Offset(0, 12) = val2
> c.Offset(0, 13) = val3
> c.Offset(0, 14) = val4
> Formation 3
> c.Offset(0, 15) = val2
> c.Offset(0, 16) = val3
> c.Offset(0, 17) = val4
> etc...
> Les valeurs où je receuille les informations ne changent pas à savoir:
> val1 = .Cells(4, 14).Value
> val2 = .Cells(18, 20) 'présence
> val3 = .Cells(3, 19) 'méthode de paiement
> val4 = .Cells(21, 11) 'coût
>
> J'espère que ces informations vous serons utiles
>
> --
> Richard
>
>
> "Daniel.C" a écrit :
>
>> Plutôt :
>> With Worksheets("Membres")
>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>> c.Offset(0, 6 + val1 * 3) = val2
>> c.Offset(0, 7 + val1 * 3) = val3
>> c.Offset(0, 8 + val1 * 3) = val4
>>
>> Next c
>> End With
>>
>> Daniel
>>
>>> Bonjour.
>>> Si j'ai bien compris :
>>>
>>> With Worksheets("Membres")
>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>> c.Offset(0, 6 * val1 * 3) = val2
>>> c.Offset(0, 7 * val1 * 3) = val3
>>> c.Offset(0, 8 * val1 * 3) = val4
>>>
>>> Next c
>>> End With
>>>
>>> Daniel
>>>
>>>> Bonjour Daniel
>>>>
>>>> En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
>>>> cette macro pour qu'elle soit encore plus efficace.
>>>>
>>>> J'aimerais ajouter une variante à cette macro
>>>> Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à 5)
>>>> Donc la macro ci-joint est celle de la formation #2
>>>> Pour les autres formations ce qui change sont où coller les informations
>>>> Formation #3 c.Offset(0, 15) = val2
>>>> c.Offset(0, 16) = val3
>>>> c.Offset(0, 17) = val4
>>>> Formation #4 c.Offset(0, 18) = val2
>>>> c.Offset(0, 19) = val3
>>>> c.Offset(0, 20) = val4
>>>> Formation #5
>>>> c.Offset(0, 21) = val2
>>>> c.Offset(0, 22) = val3
>>>> c.Offset(0, 23) = val4
>>>>
>>>> Voici la macro corrigé
>>>>
>>>> Dim c As Range, val1, val2, val3, val4
>>>>
>>>> With Worksheets("Info")
>>>> val1 = .Cells(4, 14).Value
>>>> val2 = .Cells(18, 20) 'présence
>>>> val3 = .Cells(3, 19) 'méthode de paiement
>>>> val4 = .Cells(21, 11) 'coût
>>>>
>>>> End With
>>>>
>>>> With Worksheets("Membres")
>>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>>> If c = val1 Then
>>>> c.Offset(0, 12) = val2
>>>> c.Offset(0, 13) = val3
>>>> c.Offset(0, 14) = val4
>>>>
>>>> End If
>>>> Next c
>>>> End With
>>>>
>>>> Worksheets("Info").Activate
>>>> Range("B2").Select
>>>>
>>>> End Sub
>>>>
>>>>
>>>>
>>>>
>>>> -- Nitrof
>>>>
>>>>
>>>> "Daniel.C" a écrit :
>>>>
>>>>> Bonjour.
>>>>> A mon avis, le problème vient de tes données. Peux-tu mettre ton classeur
>>>>> sur www.cjoint.com en effaçant les données confidentielles et poster ici
>>>>> l'adresse générée ?
>>>>> Cordialement.
>>>>> Daniel
>>>>>
>>>>>> J'ai une macro qui fonctionne bien mais seulement pour une commande. Je
>>>>>> ne sais pas comment voici ma commande. Si quelqu'un peut trouver m'aider
>>>>>> ce serait grandement apprécié
>>>>>>
>>>>>> -- Dim id, ligne As Integer
>>>>>> Worksheets("Info").Cells(18, 20).Copy
>>>>>> id = Worksheets("Info").Cells(2, 19).Value
>>>>>> With Worksheets("Membres")
>>>>>> .Activate
>>>>>> ligne = 10
>>>>>> While .Cells(ligne, 1) <> ""
>>>>>> If .Cells(ligne, 1) = id Then
>>>>>> .Cells(ligne, 15).Select
>>>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>>>> '2e commande
>>>>>> Worksheets("Info").Cells(3, 20).Copy
>>>>>> id = Worksheets("Info").Cells(3, 19).Value
>>>>>> With Worksheets("Membres")
>>>>>> .Activate
>>>>>> ligne = 10
>>>>>> While .Cells(ligne, 1) <> ""
>>>>>> If .Cells(ligne, 1) = id Then
>>>>>> .Cells(ligne, 16).Select
>>>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>>>> GoTo fin
>>>>>> End If
>>>>>> ligne = ligne + 1
>>>>>> Wend
>>>>>> End With
>>>>>> fin: Worksheets("Info").Activate
>>>>>> Range("B2").Select
>>>>>
>>>>>
>>
>>
>>





Avatar
Daniel.C
Réponse. Je pensais que val1 était le numéro de formation
Donc, il faut remplacer val1 par le n° de formation :
noForm =[Info!S4]
c.Offset(0, 6 + noForm * 3) = val2
Daniel

Question
Où prends-tu la valeur Info(4,19) qui est la référence du # de formation,
c'est ça que je ne parviens pas à comprendre
--
Nitrof


"Daniel.C" a écrit :

Ce que je comprends :
Pour la formation 1 :
c.Offset(0, 9) = val2
Pour la formation 2 :
c.Offset(0, 12) = val2
Pour la formation 3 :
c.Offset(0, 15) = val2
Soit un décalage de 3 colonnes.
Val1 contenant le numéro de la formation, de 1 à 5
j'ai écrit :
c.Offset(0, 6 + val1 * 3) = val2
et de même pour val3 et val4.
Ce qui me semble convenir à toutes les formations ?
Daniel


Merci de ton aide mais ça fonctionne pas.

Comme j'ai expliqué au préalable, ma macro fonctionne correctement,
cependant je dois avoir plusieur bouton pour lancer la formule.
Je donne 5 formations/an (avril, mai, juin, sept & nov) que j''identifie de
1 à 5 (information situé dans ma feuille "Info en (4,19))
Donc avec le même bouton, j'aimerais pouvoir lance la macro selon la date
et coller les infos dans les cellules suivantes
Formation 2
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4
Formation 3
c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
etc...
Les valeurs où je receuille les informations ne changent pas à savoir:
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

J'espère que ces informations vous serons utiles

--
Richard


"Daniel.C" a écrit :

Plutôt :
With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 + val1 * 3) = val2
c.Offset(0, 7 + val1 * 3) = val3
c.Offset(0, 8 + val1 * 3) = val4

Next c
End With

Daniel

Bonjour.
Si j'ai bien compris :

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
c.Offset(0, 6 * val1 * 3) = val2
c.Offset(0, 7 * val1 * 3) = val3
c.Offset(0, 8 * val1 * 3) = val4

Next c
End With

Daniel

Bonjour Daniel

En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
cette macro pour qu'elle soit encore plus efficace.

J'aimerais ajouter une variante à cette macro
Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à
5) Donc la macro ci-joint est celle de la formation #2
Pour les autres formations ce qui change sont où coller les informations
Formation #3 c.Offset(0, 15) = val2
c.Offset(0, 16) = val3
c.Offset(0, 17) = val4
Formation #4 c.Offset(0, 18) = val2
c.Offset(0, 19) = val3
c.Offset(0, 20) = val4
Formation #5
c.Offset(0, 21) = val2
c.Offset(0, 22) = val3
c.Offset(0, 23) = val4

Voici la macro corrigé

Dim c As Range, val1, val2, val3, val4

With Worksheets("Info")
val1 = .Cells(4, 14).Value
val2 = .Cells(18, 20) 'présence
val3 = .Cells(3, 19) 'méthode de paiement
val4 = .Cells(21, 11) 'coût

End With

With Worksheets("Membres")
For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
If c = val1 Then
c.Offset(0, 12) = val2
c.Offset(0, 13) = val3
c.Offset(0, 14) = val4

End If
Next c
End With

Worksheets("Info").Activate
Range("B2").Select

End Sub




-- Nitrof


"Daniel.C" a écrit :

Bonjour.
A mon avis, le problème vient de tes données. Peux-tu mettre ton
classeur sur www.cjoint.com en effaçant les données confidentielles et
poster ici l'adresse générée ?
Cordialement.
Daniel

J'ai une macro qui fonctionne bien mais seulement pour une commande.
Je ne sais pas comment voici ma commande. Si quelqu'un peut trouver
m'aider ce serait grandement apprécié

-- Dim id, ligne As Integer
Worksheets("Info").Cells(18, 20).Copy
id = Worksheets("Info").Cells(2, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 15).Select
Selection.PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
'2e commande
Worksheets("Info").Cells(3, 20).Copy
id = Worksheets("Info").Cells(3, 19).Value
With Worksheets("Membres")
.Activate
ligne = 10
While .Cells(ligne, 1) <> ""
If .Cells(ligne, 1) = id Then
.Cells(ligne, 16).Select
Selection.PasteSpecial Paste:=xlPasteValues,
Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
GoTo fin
End If
ligne = ligne + 1
Wend
End With
fin: Worksheets("Info").Activate
Range("B2").Select
























Avatar
Richard
Voila, nous nous comprenons,
En Info!(4,20) «c'est notre 1er moteur de recherche qui le # de formation»
et en Info!(4,15) «c'est notre 2e moteur de recherche qui est # du membre
pour qui nous allons créditer la formation»
Est-ce encore clair pour vous
--
Richard
Merci pour ton effort et ta patience

"Daniel.C" a écrit :

Réponse. Je pensais que val1 était le numéro de formation
Donc, il faut remplacer val1 par le n° de formation :
noForm =[Info!S4]
c.Offset(0, 6 + noForm * 3) = val2
Daniel

> Question
> Où prends-tu la valeur Info(4,19) qui est la référence du # de formation,
> c'est ça que je ne parviens pas à comprendre
> --
> Nitrof
>
>
> "Daniel.C" a écrit :
>
>> Ce que je comprends :
>> Pour la formation 1 :
>> c.Offset(0, 9) = val2
>> Pour la formation 2 :
>> c.Offset(0, 12) = val2
>> Pour la formation 3 :
>> c.Offset(0, 15) = val2
>> Soit un décalage de 3 colonnes.
>> Val1 contenant le numéro de la formation, de 1 à 5
>> j'ai écrit :
>> c.Offset(0, 6 + val1 * 3) = val2
>> et de même pour val3 et val4.
>> Ce qui me semble convenir à toutes les formations ?
>> Daniel
>>
>>
>>> Merci de ton aide mais ça fonctionne pas.
>>>
>>> Comme j'ai expliqué au préalable, ma macro fonctionne correctement,
>>> cependant je dois avoir plusieur bouton pour lancer la formule.
>>> Je donne 5 formations/an (avril, mai, juin, sept & nov) que j''identifie de
>>> 1 à 5 (information situé dans ma feuille "Info en (4,19))
>>> Donc avec le même bouton, j'aimerais pouvoir lance la macro selon la date
>>> et coller les infos dans les cellules suivantes
>>> Formation 2
>>> c.Offset(0, 12) = val2
>>> c.Offset(0, 13) = val3
>>> c.Offset(0, 14) = val4
>>> Formation 3
>>> c.Offset(0, 15) = val2
>>> c.Offset(0, 16) = val3
>>> c.Offset(0, 17) = val4
>>> etc...
>>> Les valeurs où je receuille les informations ne changent pas à savoir:
>>> val1 = .Cells(4, 14).Value
>>> val2 = .Cells(18, 20) 'présence
>>> val3 = .Cells(3, 19) 'méthode de paiement
>>> val4 = .Cells(21, 11) 'coût
>>>
>>> J'espère que ces informations vous serons utiles
>>>
>>> --
>>> Richard
>>>
>>>
>>> "Daniel.C" a écrit :
>>>
>>>> Plutôt :
>>>> With Worksheets("Membres")
>>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>>> c.Offset(0, 6 + val1 * 3) = val2
>>>> c.Offset(0, 7 + val1 * 3) = val3
>>>> c.Offset(0, 8 + val1 * 3) = val4
>>>>
>>>> Next c
>>>> End With
>>>>
>>>> Daniel
>>>>
>>>>> Bonjour.
>>>>> Si j'ai bien compris :
>>>>>
>>>>> With Worksheets("Membres")
>>>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>>>> c.Offset(0, 6 * val1 * 3) = val2
>>>>> c.Offset(0, 7 * val1 * 3) = val3
>>>>> c.Offset(0, 8 * val1 * 3) = val4
>>>>>
>>>>> Next c
>>>>> End With
>>>>>
>>>>> Daniel
>>>>>
>>>>>> Bonjour Daniel
>>>>>>
>>>>>> En effet j'ai corrigé ma macro mais je ne sais pas comment la corriger
>>>>>> cette macro pour qu'elle soit encore plus efficace.
>>>>>>
>>>>>> J'aimerais ajouter une variante à cette macro
>>>>>> Dans le classeur "Info" (S4) est indiqué le No. de la formation (de 1 à
>>>>>> 5) Donc la macro ci-joint est celle de la formation #2
>>>>>> Pour les autres formations ce qui change sont où coller les informations
>>>>>> Formation #3 c.Offset(0, 15) = val2
>>>>>> c.Offset(0, 16) = val3
>>>>>> c.Offset(0, 17) = val4
>>>>>> Formation #4 c.Offset(0, 18) = val2
>>>>>> c.Offset(0, 19) = val3
>>>>>> c.Offset(0, 20) = val4
>>>>>> Formation #5
>>>>>> c.Offset(0, 21) = val2
>>>>>> c.Offset(0, 22) = val3
>>>>>> c.Offset(0, 23) = val4
>>>>>>
>>>>>> Voici la macro corrigé
>>>>>>
>>>>>> Dim c As Range, val1, val2, val3, val4
>>>>>>
>>>>>> With Worksheets("Info")
>>>>>> val1 = .Cells(4, 14).Value
>>>>>> val2 = .Cells(18, 20) 'présence
>>>>>> val3 = .Cells(3, 19) 'méthode de paiement
>>>>>> val4 = .Cells(21, 11) 'coût
>>>>>>
>>>>>> End With
>>>>>>
>>>>>> With Worksheets("Membres")
>>>>>> For Each c In .Range("c10", .[c65536].End(xlUp).Address).Cells
>>>>>> If c = val1 Then
>>>>>> c.Offset(0, 12) = val2
>>>>>> c.Offset(0, 13) = val3
>>>>>> c.Offset(0, 14) = val4
>>>>>>
>>>>>> End If
>>>>>> Next c
>>>>>> End With
>>>>>>
>>>>>> Worksheets("Info").Activate
>>>>>> Range("B2").Select
>>>>>>
>>>>>> End Sub
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> -- Nitrof
>>>>>>
>>>>>>
>>>>>> "Daniel.C" a écrit :
>>>>>>
>>>>>>> Bonjour.
>>>>>>> A mon avis, le problème vient de tes données. Peux-tu mettre ton
>>>>>>> classeur sur www.cjoint.com en effaçant les données confidentielles et
>>>>>>> poster ici l'adresse générée ?
>>>>>>> Cordialement.
>>>>>>> Daniel
>>>>>>>
>>>>>>>> J'ai une macro qui fonctionne bien mais seulement pour une commande.
>>>>>>>> Je ne sais pas comment voici ma commande. Si quelqu'un peut trouver
>>>>>>>> m'aider ce serait grandement apprécié
>>>>>>>>
>>>>>>>> -- Dim id, ligne As Integer
>>>>>>>> Worksheets("Info").Cells(18, 20).Copy
>>>>>>>> id = Worksheets("Info").Cells(2, 19).Value
>>>>>>>> With Worksheets("Membres")
>>>>>>>> .Activate
>>>>>>>> ligne = 10
>>>>>>>> While .Cells(ligne, 1) <> ""
>>>>>>>> If .Cells(ligne, 1) = id Then
>>>>>>>> .Cells(ligne, 15).Select
>>>>>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>>>>>> '2e commande
>>>>>>>> Worksheets("Info").Cells(3, 20).Copy
>>>>>>>> id = Worksheets("Info").Cells(3, 19).Value
>>>>>>>> With Worksheets("Membres")
>>>>>>>> .Activate
>>>>>>>> ligne = 10
>>>>>>>> While .Cells(ligne, 1) <> ""
>>>>>>>> If .Cells(ligne, 1) = id Then
>>>>>>>> .Cells(ligne, 16).Select
>>>>>>>> Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>>>> Operation:=xlNone, SkipBlanks:úlse, Transpose:úlse
>>>>>>>> GoTo fin
>>>>>>>> End If
>>>>>>>> ligne = ligne + 1
>>>>>>>> Wend
>>>>>>>> End With
>>>>>>>> fin: Worksheets("Info").Activate
>>>>>>>> Range("B2").Select
>>>>>>>
>>>>>>>
>>>>
>>>>
>>>>
>>
>>
>>





1 2