[VBA] code comparaison valeurs ne fonctionnant pas !

  • Initiateur de la discussion Initiateur de la discussion brice001
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

brice001

Guest
Bonjour,

J'ai repris un code sur ce forum pour le réutiliser.
Helas il ne fonctionne pas

Le voici ,
Option Explicit

Public Const SheetSource As String = "S-1"
Public Const SheetCible As String = "S"
Public Const SheetFinal As String = "Tableau"
Sub test1()

Dim WSSource As Worksheet, WSCible As Worksheet, WSFinal As Worksheet
Dim TabSource As Variant, TabCible As Variant, TabFinal As Variant
Dim i As Long, j As Long, x As Long, k As Long
Dim nbreWSSource As Long, nbreWSCible As Long

With ThisWorkbook
Set WSSource = Sheets(SheetSource)
Set WSCible = Sheets(SheetCible)
Set WSFinal = Sheets(SheetFinal)

nbreWSSource = WSSource.Cells(65536, 1).End(xlUp).Row
nbreWSCible = WSCible.Cells(65536, 1).End(xlUp).Row

End With

With WSSource
TabSource = Range(Cells(1, 1), Cells(nbreWSSource, 3))
End With

With WSCible
TabCible = Range(Cells(1, 1), Cells(nbreWSCible, 3))
End With


K=1
For i = 1 To nbreWSCible

For j = 1 To nbreWSSource

If TabSource(j, 1) = TabCible(i, 1) Then
If Not TabSource(j, 3) = TabCible(i, 3) Then


WSFinal.Cells(k, 1) = TabCible(i, 1)
WSFinal.Cells(k, 2) = TabCible(i, 3)
WSFinal.Cells(k, 3) = "changement"
k = k + 1

End If
End If
Next
Next

End Sub

Mon objectif, jai un tableau en sheets S et un autre en sheets S-1,
je veux comparer la colonne A du premier tableau a celle du deuxieme (A), une fois qu'il trouve le meme clé (chiffre identique) il regarde la colonne C si leur chiffre est different.
Si oui il doit le coller dans un nouveau tableau sur le sheet final. en indiquant la valeur de la colonne A et B plus indiqué la mention changement.


Merci de bien vouloir m'aider.
 

Pièces jointes

Re : [VBA] code comparaison valeurs ne fonctionnant pas !

Salut Brice001,

Ton problème se situe au niveau de la définition des tableaux

Le code doit être
Code:
With WSSource
    TabSource = .Range(.Cells(1, 1), .Cells(nbreWSSource, 3))
End With
With WSCible
    TabCible = .Range(.Cells(1, 1), .Cells(nbreWSCible, 3))
End With
Il ne faut pas oublier LES POINTS

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
930
Réponses
15
Affichages
825
Réponses
4
Affichages
743
Réponses
10
Affichages
679
Retour