Aide macro - copier / coller valeur max d'une ligne
Résolu
kaiser4
Messages postés
111
Statut
Membre
-
kaiser4 Messages postés 111 Statut Membre -
kaiser4 Messages postés 111 Statut Membre -
Bonjour,
Je ne pense pas que le titre soit tout à fait explicite, donc je vais essayer d'être le plus clair possible.
Je souhaite rechercher, et copier la valeur maximum des colonnes de gauche, et les copier sur les colonnes de doite, seulement si les valeurs des colonnes de gauche sont supérieures aux colonnes de droite.
Je rentre tous les mois un pourcentage d'avancement sur certain sujet.
ligne 1 = sujet 1
ligne2 = sujet 2 etc.....
Colonne A = Janvier
Colonne B = Février etc....
Exemple:
A B C D E
1 20 % 20% 20% 20% 20%
2 20% 30% 40% 40% 60%
3 10% 20 % 20% 40% 40%
4 5% 10% 20% 30% 40%
exemple ligne 1:
Si je suis à 20% d'avancement en janvier, et que je n'avance pas sur le sujet le restant de l'année, alors mon pourcentage d'avancement est toujours de 20 %.
exemple ligne2:
Mais si j'avance sur le sujet en janvier, février et mars, alors on copie la valeur max des colonne de gauche (40%) et on copie sur les colonnes de droite.
J'essaie de créer un macro pouvant faire cela, mais je suis assez limité en VB.
J'éspère avoit été assez clair.
Cordialement.
Kaiser4
Je ne pense pas que le titre soit tout à fait explicite, donc je vais essayer d'être le plus clair possible.
Je souhaite rechercher, et copier la valeur maximum des colonnes de gauche, et les copier sur les colonnes de doite, seulement si les valeurs des colonnes de gauche sont supérieures aux colonnes de droite.
Je rentre tous les mois un pourcentage d'avancement sur certain sujet.
ligne 1 = sujet 1
ligne2 = sujet 2 etc.....
Colonne A = Janvier
Colonne B = Février etc....
Exemple:
A B C D E
1 20 % 20% 20% 20% 20%
2 20% 30% 40% 40% 60%
3 10% 20 % 20% 40% 40%
4 5% 10% 20% 30% 40%
exemple ligne 1:
Si je suis à 20% d'avancement en janvier, et que je n'avance pas sur le sujet le restant de l'année, alors mon pourcentage d'avancement est toujours de 20 %.
exemple ligne2:
Mais si j'avance sur le sujet en janvier, février et mars, alors on copie la valeur max des colonne de gauche (40%) et on copie sur les colonnes de droite.
J'essaie de créer un macro pouvant faire cela, mais je suis assez limité en VB.
J'éspère avoit été assez clair.
Cordialement.
Kaiser4
A voir également:
- Aide macro - copier / coller valeur max d'une ligne
- Historique copier coller - Guide
- Copier-coller - Accueil - Informatique
- Copier coller pdf - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Style d'écriture a copier coller - Guide
5 réponses
Crée une macro comme celà :
Dim i as integer
For i = 1 to 4
If Range("B" & i)>Range("C" & i)
Range("C" & i)=Range("B" & i).Value
End if
If Range("C" & i)>Range("D" & i)
Range("D" & i)=Range("C" & i).Value
End if
If Range("D" & i)>Range("E" & i)
Range("E" & i)=Range("D" & i).Value
End if
End for
Bonjour,
Merci pour ton aide, mais cela ne fonctionne pas.
Apparemment il y a des erreurs de compilation.
J'ai bien vérifié mon copier coller, essayeé de modifier la macro pour éviter les erreurs, mais cela ne fonctionne pas.
Merci d'avance.
Merci pour ton aide, mais cela ne fonctionne pas.
Apparemment il y a des erreurs de compilation.
J'ai bien vérifié mon copier coller, essayeé de modifier la macro pour éviter les erreurs, mais cela ne fonctionne pas.
Merci d'avance.
J'ai essayé en enlevant les % des cases, mais toujours le même message d'erreur.
Erreur de syntage, erreur de compilation
Les valeurs à scruter se trouvent de I5 jusqu'a S15.
Merci de ton aide.
Erreur de syntage, erreur de compilation
Les valeurs à scruter se trouvent de I5 jusqu'a S15.
Merci de ton aide.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai rectifier suite au message d'erreur, en suivant l'aide excel.
Dim i As Integer
For i = 1 To 4
If Range("B" & i) > Range("C" & i) Then
Range("C" & i) = Range("B" & i).Value
End If
If Range("C" & i) > Range("D" & i) Then
Range("D" & i) = Range("C" & i).Value
End If
If Range("D" & i) > Range("E" & i) Then
Range("E" & i) = Range("D" & i).Value
End If
Next
Cela fonctionne, merci beaucoup.
Je vais me débrouiller maintenant pour que la macro scrute les bonnes cases.
Encore merci A+.
Dim i As Integer
For i = 1 To 4
If Range("B" & i) > Range("C" & i) Then
Range("C" & i) = Range("B" & i).Value
End If
If Range("C" & i) > Range("D" & i) Then
Range("D" & i) = Range("C" & i).Value
End If
If Range("D" & i) > Range("E" & i) Then
Range("E" & i) = Range("D" & i).Value
End If
Next
Cela fonctionne, merci beaucoup.
Je vais me débrouiller maintenant pour que la macro scrute les bonnes cases.
Encore merci A+.