VBA avec variable et condition
Résolu
GCforEV
-
GCforEV -
GCforEV -
Bonjour,
Je suis débutante en VBA, je ne parviens pas à la faire fonctionner :
J'ai un tableau feuille 1 :
A B C
date REF quantité
12/05 102
11/05 101
13/05 103
J'ai un second tableau feuille 2 (extraction) :
A B C
date REF quantité
11/05 101 1
12/05 102 2
14/05 103 3
Je souhaite que les valeurs colonne C feuille 2 s'indique colonne C feuille 1 si
les valeurs colonne A de feuille 1 et 2 correspondent et que les valeurs colonnes B feuille 1 et 2 correspondent alors il faut indiquer la quantité colonne C :
Le problème avec ma macro, c'est qu'elle ne tient pas compte des conditions et colle les quantités pas à côté des bonne refs
Sub subtest()
'Déclaration variable x
Dim x As Integer
For x = 2 To 30
' Condition si les valeurs correspondent
If Range("A" & x) = Sheets("extraction").Range("A" & x) And Range("B" & x) = Sheets("extraction").Range("B" & x) Then
'COLLER les valeurs C
Range("C" & x) = Sheets("extraction").Range("C" & x)
End If
Next
End Sub
Je suis débutante en VBA, je ne parviens pas à la faire fonctionner :
J'ai un tableau feuille 1 :
A B C
date REF quantité
12/05 102
11/05 101
13/05 103
J'ai un second tableau feuille 2 (extraction) :
A B C
date REF quantité
11/05 101 1
12/05 102 2
14/05 103 3
Je souhaite que les valeurs colonne C feuille 2 s'indique colonne C feuille 1 si
les valeurs colonne A de feuille 1 et 2 correspondent et que les valeurs colonnes B feuille 1 et 2 correspondent alors il faut indiquer la quantité colonne C :
Le problème avec ma macro, c'est qu'elle ne tient pas compte des conditions et colle les quantités pas à côté des bonne refs
Sub subtest()
'Déclaration variable x
Dim x As Integer
For x = 2 To 30
' Condition si les valeurs correspondent
If Range("A" & x) = Sheets("extraction").Range("A" & x) And Range("B" & x) = Sheets("extraction").Range("B" & x) Then
'COLLER les valeurs C
Range("C" & x) = Sheets("extraction").Range("C" & x)
End If
Next
End Sub
Configuration: Windows / Chrome 78.0.3904.87
A voir également:
- Vb vba
- Vb - Télécharger - Langages
- L'indice n'appartient pas à la sélection vba - Forum VB / VBA
- Incompatibilité de type vba ✓ - Forum Programmation
- Vb cable - Télécharger - Audio & Musique
- Excel compter cellule couleur sans vba - Guide
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, alors plutôt ainsi:
Sub subtest() 'Déclaration variable x Dim x As Integer, y As Integer For x = 2 To 30 For y = 2 To 30 ' Condition si les valeurs correspondent If Range("A" & x) = Sheets("extraction").Range("A" & y) And Range("B" & x) = Sheets("extraction").Range("B" & y) Then 'COLLER les valeurs C Range("C" & x) = Sheets("extraction").Range("C" & y) End If Next y Next x End Sub
Peut-être pourriez vous m'aider pour la suite, je souhaitais ajouter un else :
Insérer une ligne feuille 1, et coller la ligne de feuille 2 (extraction) qui ne remplie pas la condition . Est-ce faisable ?