Remplacer des données d'un tableau en fonction d'un critère
Bonjour,
J'ai besoin d'aide pour un petit problème de macro.
Donc j'ai une feuille excel avec deux onglets:
- 1er onglet : j'ai un tableau de plusieurs colonnes fixes et des lignes qui s'incrémentent en fonction d'un autre tableau (qui sera pas concerné par mon soucis ici). J'ai une référence en colonne A du style RC-XX-XX (la seule donnée qui est fixe)
- 2eme onglet : j'ai un document avec des trous à des endroits spécifiques
En gros, j'aimerais remplir mon 2eme onglet avec les données du tableau selon ma référence (ça j'ai trouvé avec la macro ci-dessous)
Sub Macro2()
With Sheets("Quick")
.Range("B2").Value = WorksheetFunction.VLookup(.Range("B1").Value, Sheets("TEST").Range("A2:F100"), 2, False)
End With
End Sub
Je l'ai appliqué seulement sur le mini tableau 1/ du 2eme onglet
Et j'aimerais (et c'est là que je bloque) que si je modifie une donnée sur l'onglet 2, la donnée se modifie automatiquement dans la tableau (onglet 1) en recherchant la référence RC-XX-XX.
Je ne sais pas si c'est possible et j'avoue je ne sais pas par quoi commencer, s'il faut faire un copier/coller, un remplacement, une recherche
Sur l'onglet 2, en jaune c'est ce qui va se remplir automatiquement en tapant la référence dans la cellule en rouge et qui j'aimerais se recopie dans la tableau (sans ajouté une nouvelle ligne) quand il y a un changement
J'espère avoir été clair.
Merci de votre réponse et de votre aide
Cordialement
PS : pour garder en mémoire ce qui est dans l'onglet 2 et le copier dans l'onglet 1 j'ai trouvé ça :
Sub validation()
'Atteindre le formulaire et mémoriser les données
Sheets("Quick_Kaizen modification").Select
Range("I9:I15").Select
Selection.Copy
'Test pour déterminer la ligne ou coller les infos dans le tableau
Sheets("TEST").Select
valeurB4 = Range("B4").Value
If valeurB4 = "" Then
Range("B4").Select
Else
Range("B3").Select
Selection.End(xlDown).Select
ligne_active_base = ActiveCell.Row
Range("B" & ligne_active_base + 1).Select
End If
'Mémoriser le n° de la ligne ou coller les données
ligne_active_base = ActiveCell.Row
'Collage avec transposition
Range("B" & ligne_active_base).Select
Selection.PasteSpecial Paste:=xlPasteAllExceptBorders, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
'Rendre vierge le formulaire
Sheets("Quick_Kaizen modification").Select
Range("I9:I15").Select
Selection.ClearContents
Range("I9").Select
End Sub
J'ai essayé de l'adapter à mon document, je pense pour avoir ce que j'ai envie faut que je modifie cette partie
'Test pour déterminer la ligne ou coller les infos dans le tableau
Sheets("TEST").Select
valeurB4 = Range("B4").Value
If valeurB4 = "" Then
Range("B4").Select
Else
Range("B3").Select
Selection.End(xlDown).Select
ligne_active_base = ActiveCell.Row
Range("B" & ligne_active_base + 1).Select
End If
Je suis sur le bon chemin ou je suis totalement à l'ouest?
Bonjour,
J'ai trouvé la fonction Find pour m'aider mais ça ne fait pas ce que je veux
'Test pour déterminer la ligne ou coller les infos dans le tableau
RC = Sheets("TEST").Columns("A").Find(What:=Sheets("Quick_Kaizen modification").Range("B4"), LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext)
Sheets("TEST").Select
If RC = True Then
Cells(RC, 2).Select
ligne_active_base = ActiveCell.Row
Else
Range("B3").Select
Selection.End(xlDown).Select
ligne_active_base = ActiveCell.Row
Range("B" & ligne_active_base + 1).Select
End If
Pourquoi ça copie sur une nouvelle ligne et ça ne remplace par sur la ligne contenant ma référence?
Cordialement