Comparer et copier valeur de deux feuille
Mag
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je sollicite votre aide pour un soucis de programmation merci d'avance.
Voila mon probleme est le suivant: je dispose de 2 feuilles dans un meme classeur
Feuille 1
Date (colonne C), somme (colonne E) remise (colonne G)
Feuille 2
Date (colonne C), somme (colonne G) remise (colonne I)
Dans le feuille 2 la colonne I est vide, ce que je cherche à faire c’est comparer
Colonne C (feuille1) avec Colonne C (feuille2)
Et
Somme (colonne E, feuille 1) avec somme (colonne G, feuille 2)
Et si ses deux conditions sont vraies (egales, par rapport a une cellule de la feuille 2) en même temps
Copier la valeur de la cellule
remise (colonne Gi, feuille 1) dans la cellule remise (colonne Ij, de la feuille 2)
Exemple
Formule écrite dans la cellule I21 de la feuille 2
=(SI(ET('Feuil1'!C$15:C$64=C21;'Feuil1'!E$15:E$64=G21);'Feuil1'!G$15:G$22;))
Mais malheureusement ca marche pas
Merci pour votre retour
Mag
Je sollicite votre aide pour un soucis de programmation merci d'avance.
Voila mon probleme est le suivant: je dispose de 2 feuilles dans un meme classeur
Feuille 1
Date (colonne C), somme (colonne E) remise (colonne G)
Feuille 2
Date (colonne C), somme (colonne G) remise (colonne I)
Dans le feuille 2 la colonne I est vide, ce que je cherche à faire c’est comparer
Colonne C (feuille1) avec Colonne C (feuille2)
Et
Somme (colonne E, feuille 1) avec somme (colonne G, feuille 2)
Et si ses deux conditions sont vraies (egales, par rapport a une cellule de la feuille 2) en même temps
Copier la valeur de la cellule
remise (colonne Gi, feuille 1) dans la cellule remise (colonne Ij, de la feuille 2)
Exemple
Formule écrite dans la cellule I21 de la feuille 2
=(SI(ET('Feuil1'!C$15:C$64=C21;'Feuil1'!E$15:E$64=G21);'Feuil1'!G$15:G$22;))
Mais malheureusement ca marche pas
Merci pour votre retour
Mag
A voir également:
- Comparer et copier valeur de deux feuille
- Nombre de jours entre deux dates excel - Guide
- Comment copier une vidéo youtube - Guide
- Comment faire deux colonnes sur word - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Super copier - Télécharger - Gestion de fichiers
7 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 586
Quel est le symptôme, quel est le message d'erreur ?
Quand tu écris : "ce que je cherche à faire c’est comparer Colonne C (feuille1) avec Colonne C (feuille2)", que veux-tu dire exactement ? Tu veux vérifier que toutes les valeurs dans les lignes correspondantes sont identiques ?
Quand tu écris : "ce que je cherche à faire c’est comparer Colonne C (feuille1) avec Colonne C (feuille2)", que veux-tu dire exactement ? Tu veux vérifier que toutes les valeurs dans les lignes correspondantes sont identiques ?
En fait j'essaye de recuperer a valeur de la remise de la feuille 1 et la copier dans la feuille 2 si la date et la somme sont egale dans les deux feuilles. d'ou la comparaison.
merci
merci
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 586
Tu veux rechercher dans une feuille si il y a, n'importe où, les mêmes valeurs que sur une ligne donnée d'une autre feuille ?
Exact, et si elles correspondent copier la valeur ("remise") dans le cellule de meme ligne que la colonne "remise" dans la feuille 2
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 586
Je pense à deux options :
1° faire un petit programme en VBA, qui ferait le travail. Il pourrait être déclenché par une combinaison de touches, ou par le menu "outils".
2° chipoter avec des formules, en créant dans chaque feuille une colonne bidon qui reprend la combinaison des deux colonnes à comparer.
Que préferes-tu ? Je suggère la première option, sauf si tu es allergique au VBA et que tu ne voudras rien faire de plus compliqué.
1° faire un petit programme en VBA, qui ferait le travail. Il pourrait être déclenché par une combinaison de touches, ou par le menu "outils".
2° chipoter avec des formules, en créant dans chaque feuille une colonne bidon qui reprend la combinaison des deux colonnes à comparer.
Que préferes-tu ? Je suggère la première option, sauf si tu es allergique au VBA et que tu ne voudras rien faire de plus compliqué.
je me suis fait un code en VB ( cf plus bas) mais j'ai l'impression que la variable "i" ne s'incremente pas, bref ca marche pas je sais plus quoi faire je suis depité :-)
Sub Comparaison()
Dim date1 As Variant
Dim date2 As Variant
Dim somme1 As Variant
Dim somme2 As Variant
Dim remise1 As Variant
Dim remise2 As Variant
Dim i As Byte, j As Byte
'creation des 2 tableaux
date1 = Sheets("feuill1").Range("C15:C29") 'feuil1
date2 = Sheets("feuill2").Range("C10:C25") 'Feuil2
somme1 = Sheets("feuill1").Range("E15:E29")
sommes2 = Sheets("feuill2").Range("D10:D25")
remise1 = Sheets("feuill1").Range("G15:G29")
remise2 = Sheets("feuill2").Range("F10:F25")
For i = 1 To UBound(date1)
For j = 1 To 100 'UBound(date2)
'si la colonne 1 du date 1 =la colonne 1 du date 2, alors
If date1(i, 1) = date2(j, 1) Then
'si la colonne 1 du somme 1 =la colonne 1 du somme 2, alors
If somme1(i, 1) = somme2(j, 1) Then
remise2(i, 1).value = remise1(j, 1).value
End If
End If
Next j
Next i
' Touche de raccourci du clavier: Ctrl+l
'
End Sub
Sub Comparaison()
Dim date1 As Variant
Dim date2 As Variant
Dim somme1 As Variant
Dim somme2 As Variant
Dim remise1 As Variant
Dim remise2 As Variant
Dim i As Byte, j As Byte
'creation des 2 tableaux
date1 = Sheets("feuill1").Range("C15:C29") 'feuil1
date2 = Sheets("feuill2").Range("C10:C25") 'Feuil2
somme1 = Sheets("feuill1").Range("E15:E29")
sommes2 = Sheets("feuill2").Range("D10:D25")
remise1 = Sheets("feuill1").Range("G15:G29")
remise2 = Sheets("feuill2").Range("F10:F25")
For i = 1 To UBound(date1)
For j = 1 To 100 'UBound(date2)
'si la colonne 1 du date 1 =la colonne 1 du date 2, alors
If date1(i, 1) = date2(j, 1) Then
'si la colonne 1 du somme 1 =la colonne 1 du somme 2, alors
If somme1(i, 1) = somme2(j, 1) Then
remise2(i, 1).value = remise1(j, 1).value
End If
End If
Next j
Next i
' Touche de raccourci du clavier: Ctrl+l
'
End Sub
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 586
ajoute "option explicit" sur une ligne tout au dessus du module.
cela te permettra de découvrir qu'une de tes variables est mal orthographiée...
cela te permettra de découvrir qu'une de tes variables est mal orthographiée...