Trouver la valeur X d'une colonne dans une autre colonne
Résolu/Fermé
bassmart
Messages postés
277
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
30 août 2022
-
Modifié par jordane45 le 19/02/2015 à 17:53
bassmart Messages postés 277 Date d'inscription jeudi 19 février 2015 Statut Membre Dernière intervention 30 août 2022 - 13 mars 2015 à 16:52
bassmart Messages postés 277 Date d'inscription jeudi 19 février 2015 Statut Membre Dernière intervention 30 août 2022 - 13 mars 2015 à 16:52
A voir également:
- Trouver la valeur X d'une colonne dans une autre colonne
- Déplacer une colonne excel - Guide
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms. quel mot est formé par les 6 premières lettres de la colonne code ? - Forum Bureautique
- Vba rechercher une valeur dans une colonne - Astuces et Solutions
- Triez la liste comme sur cette illustration (attention, on ne voit que le début …). quel est le mot formé par les 6 dernières lettres de la colonne code ? - Forum Excel
- Figer une colonne excel - Guide
3 réponses
jordane45
Messages postés
37253
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2023
4 551
19 févr. 2015 à 17:54
19 févr. 2015 à 17:54
Bonjour,
Jettes un oeil à ceci :
https://forums.commentcamarche.net/forum/affich-37621992-methode-find-dans-vba-recherche-de-donnees-sous-excel
Jettes un oeil à ceci :
https://forums.commentcamarche.net/forum/affich-37621992-methode-find-dans-vba-recherche-de-donnees-sous-excel
bassmart
Messages postés
277
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
30 août 2022
1
Modifié par jordane45 le 24/02/2015 à 15:33
Modifié par jordane45 le 24/02/2015 à 15:33
Bonjour!
Voici ou j'en suis rendu dans mon code!
J'ai réussi à coller la valeur modifié de ma feuille "Coordonnées" dans la feuille "CPTU" mais pas dans la cellule ou l'argument VRAI est renvoyé. Il copie dans la cellule active de la feuille donc la cellule A7, je ne réussi pas à trouver la façon de lui dire de remplacer l'argument VRAI par la nouvelle valeur de ma feuille "Coordonnées".
Et voilà! J'espère que quelqu'un peux m'aider sur ce coup!!!
Merci!!
EDIT : Ajout du langage dans les balises de code
Voici ou j'en suis rendu dans mon code!
J'ai réussi à coller la valeur modifié de ma feuille "Coordonnées" dans la feuille "CPTU" mais pas dans la cellule ou l'argument VRAI est renvoyé. Il copie dans la cellule active de la feuille donc la cellule A7, je ne réussi pas à trouver la façon de lui dire de remplacer l'argument VRAI par la nouvelle valeur de ma feuille "Coordonnées".
Private DLig As Long
Private PL As Range
Public var As Variant
Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean)
Dim Value As String
Dim NewVal As String
Dim VRAI As Boolean
Value = ActiveCell
'
'Pose la question dans la MsgBox lorsque l'on double-clic dans la colonne C
'
If Not Intersect(target, Range("c5:c" & [a1048576].End(xlUp).Row)) Is Nothing Then
If MsgBox("Voulez-vous mofifier cette cellule?", _
vbYesNo + vbQuestion, "MODIFER") = vbYes Then
'Ici je veux qu'il compare la colonne C de ma feuille Coordonnées avec la colonne A de mes feuilles _
CPTU et Forage, ainsi que sur la colonne B de mes feuilles Piézomètres et Inclinomètres
'
Sheets("CPTU").Columns(1).Find(Value, LookIn:=xlValues, lookat:=xlWhole, searchorder:=xlByColumns, Searchdirection:=xlNext) = True
NewVal = UCase(Application.InputBox("Nouveau numéro?", "MODIFICATION DE NUMÉRO", Type:=2))
ActiveCell = NewVal
If var <> target Then
var = target.Value
MsgBox "VALEUR CHANGÉE!", vbInformation
End If
Selection.Copy
'si je modifie ma cellule active sur ma feuille Coordonnées, il modifier ou colle la nouvelle valeur _
à dans la bonne feuille ou la valeur est stocké
Sheets("CPTU").Select
ActiveCell.Select
ActiveCell.PasteSpecial xlPasteValues
Sheets("Coordonnées").Select
Application.CutCopyMode = False
MsgBox "N'oubliez pas de changer le numéro dans la colonne ABRÉVIATION!", vbExclamation, "IMPORTANT"
Else
Range("B5").Select
End If
End If
Range("B5").Select
End Sub
Et voilà! J'espère que quelqu'un peux m'aider sur ce coup!!!
Merci!!
EDIT : Ajout du langage dans les balises de code
bassmart
Messages postés
277
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
30 août 2022
1
24 févr. 2015 à 17:28
24 févr. 2015 à 17:28
Je ne suis pas certain de bien saisir ce que tu veux dire Jordane par ton "EDIT"??
jordane45
Messages postés
37253
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2023
4 551
>
bassmart
Messages postés
277
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
30 août 2022
24 févr. 2015 à 17:31
24 févr. 2015 à 17:31
Relis les infos contenues dans ce lien :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Si tu utilises les balises de code sans préciser le langage tu obtiens ça :
Alors.. que si tu y précise le langage (ici .. basic) .. tu obtiens ceci :
.... c'est plus lisible non ?
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Si tu utilises les balises de code sans préciser le langage tu obtiens ça :
Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean)
Dim Value As String
Dim NewVal As String
Dim VRAI As Boolean
Value = ActiveCell
Alors.. que si tu y précise le langage (ici .. basic) .. tu obtiens ceci :
Private Sub Worksheet_BeforeDoubleClick(ByVal target As Range, Cancel As Boolean) Dim Value As String Dim NewVal As String Dim VRAI As Boolean Value = ActiveCell
.... c'est plus lisible non ?
bassmart
Messages postés
277
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
30 août 2022
1
>
jordane45
Messages postés
37253
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 mars 2023
Modifié par bassmart le 24/02/2015 à 20:33
Modifié par bassmart le 24/02/2015 à 20:33
Effectivement Jordane, c'est beaucoup plus lisible!!
Désolée!
Merci!
Désolée!
Merci!
bassmart
Messages postés
277
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
30 août 2022
1
13 mars 2015 à 16:52
13 mars 2015 à 16:52
Bonjours à tous,
Voici le code final qui remplace la valeur dans mes autres feuilles lorsqu'elle est modifié dans ma feuille "Coordonnées".
Voici le code final qui remplace la valeur dans mes autres feuilles lorsqu'elle est modifié dans ma feuille "Coordonnées".
rivate PL As Range
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim nvalue As String
Dim NewVal As Variant
Dim f As Worksheet
Dim valueRange As Range
Dim Cpt As Integer
Application.ScreenUpdating = False
nvalue = ActiveCell.Value
If Not Intersect(Target, Range("c5:c" & [a1048576].End(xlUp).Row + 1)) Is Nothing Then
If MsgBox("Voulez-vous mofifier le numéro de ce sondage?", _
vbYesNo + vbQuestion, "MODIFER") = vbYes Then
NewVal = UCase(InputBox("Nouveau numéro de sondage?", "MODIFICATION DE NUMÉRO"))
If NewVal = "" Then
ActiveCell.Offset(-1, 0).Select
Exit Sub
Else
ActiveCell = NewVal
End If
If InStr(1, nvalue, "C") = 1 Or InStr(1, nvalue, "M") = 1 Then
Set valueRange = Sheets("CPTU").Columns(1)
ElseIf InStr(1, nvalue, "F") = 1 Then
Set valueRange = Sheets("FORAGE").Columns(1)
ElseIf InStr(1, nvalue, "Z") = 1 Or InStr(1, nvalue, "FZ") = 1 Then
Set valueRange = Sheets("Piézomètres").Columns(2)
ElseIf InStr(1, nvalue, "I") = 1 Then
Set valueRange = Sheets("Inclinomètres").Columns(2)
Else
Set valueRange = Nothing
MsgBox "La valeur n'a pas été trouvé dans les autres feuilles! Mettre à jours les feuillets sur la page d'accueil!", vbCritical
End If
If Not valueRange Is Nothing Then
valueRange.Replace nvalue, NewVal, lookat:=xlWhole, searchorder:=xlByColumns
End If
If NewVal <> nvalue Then
MsgBox "N'oubliez pas de changer le numéro dans la colonne ABRÉVIATION!", vbExclamation, "IMPORTANT"
ActiveCell.Offset(-1, 0).Select
End If
Else
ActiveCell.Offset(-1, 0).Select
End If
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
23 févr. 2015 à 14:34
Dans mon code, j'ai déjà utiliser la fonction Find qui fonctionne très bien. elle me renvoie la valeur VRAI dans la cellule ou il a trouvé la valeur identique à celle recherché.
Mais je ne suis pas capable pour le moment de modifié mon code pour qu'il opère la même modification de ma feuille Coordonnées et à ma feuille CPTU!