Copier la valeur encodée dans une cellule définie par recherchev
Kabref
Messages postés
2
Statut
Membre
-
gbinforme Messages postés 15481 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 15481 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous et déjà merci pour votre lecture,
J'ai un peu d'expérience avec Excel dans lequel j'ai déjà fait pas mal de tableaux de bord divers, mais là je suis confronté à, à mon avis, un souci que je ne peux régler que par une macro. Or, je n'ai encore jamais utilisé de code vba.
Voici ma question, résumée le plus simplement possible j'espère:
J'ai un fichier avec deux feuilles :
Première feuille avec les colonnes suivantes
- Référence
- Date
- Référence-Date (ma clé primaire)
- Quantité provisoire calculée
- Quantité encodée
- Quantité définitive (Q provisoire si Q encodée est vide, sinon Q encodée)
Seconde feuille (un tableau de bord)
Paramètres utilisateur
- Référence
- Semaine d'analyse -> génère l'affichage de 7 dates
Données
- Quantité définitive (basée sur une recherchev de ma clé primaire)
Objectif
Lorsque l'utilisateur encode une valeur dans "quantité définitive, copier cette valeur dans le premier onglet dans la colonne "quantité encodée" puis inscrire à nouveau la meme formule initiale dans la cellule. L'utilitaire ne voit rien puisque la valeur reste la meme, mais elle est venue s'encoder dans la feuille 2.
Exemple :
Feuille 1
Référence-Date-Q Calc-Q Enco-Q Def
2233-15/04/17-45-""-45
Feuille 2
Paramètre Ref=2233 Semaine=10/04/17
Quantité affichée = 45 (recherchev qdef de 2233-150417)
Lorsque l'utilisateur encode 50 dans la cellule, aller mettre cette valeur dans Q Enco en fonction de la clé primaire et remettre la formule initiale. La valeur affichée reste 50, mais elle vient à nouveau de la feuille 1
Nouvelle feuille 1
2233-15/04/17-45-50-50
Je suis désolé pour mon explication longue et compliquée mais c'est toujours délicat d'être clair et synthétique quand on parle d'excel :).
Merci d'avance pour votre retour et bonne journée!
Kabref
J'ai un peu d'expérience avec Excel dans lequel j'ai déjà fait pas mal de tableaux de bord divers, mais là je suis confronté à, à mon avis, un souci que je ne peux régler que par une macro. Or, je n'ai encore jamais utilisé de code vba.
Voici ma question, résumée le plus simplement possible j'espère:
J'ai un fichier avec deux feuilles :
Première feuille avec les colonnes suivantes
- Référence
- Date
- Référence-Date (ma clé primaire)
- Quantité provisoire calculée
- Quantité encodée
- Quantité définitive (Q provisoire si Q encodée est vide, sinon Q encodée)
Seconde feuille (un tableau de bord)
Paramètres utilisateur
- Référence
- Semaine d'analyse -> génère l'affichage de 7 dates
Données
- Quantité définitive (basée sur une recherchev de ma clé primaire)
Objectif
Lorsque l'utilisateur encode une valeur dans "quantité définitive, copier cette valeur dans le premier onglet dans la colonne "quantité encodée" puis inscrire à nouveau la meme formule initiale dans la cellule. L'utilitaire ne voit rien puisque la valeur reste la meme, mais elle est venue s'encoder dans la feuille 2.
Exemple :
Feuille 1
Référence-Date-Q Calc-Q Enco-Q Def
2233-15/04/17-45-""-45
Feuille 2
Paramètre Ref=2233 Semaine=10/04/17
Quantité affichée = 45 (recherchev qdef de 2233-150417)
Lorsque l'utilisateur encode 50 dans la cellule, aller mettre cette valeur dans Q Enco en fonction de la clé primaire et remettre la formule initiale. La valeur affichée reste 50, mais elle vient à nouveau de la feuille 1
Nouvelle feuille 1
2233-15/04/17-45-50-50
Je suis désolé pour mon explication longue et compliquée mais c'est toujours délicat d'être clair et synthétique quand on parle d'excel :).
Merci d'avance pour votre retour et bonne journée!
Kabref
A voir également:
- Copier la valeur encodée dans une cellule définie par recherchev
- Comment copier une vidéo youtube - Guide
- Aller à la ligne dans une cellule excel - Guide
- Super copier - Télécharger - Gestion de fichiers
- Excel cellule couleur si condition texte - Guide
- Le fichier contient le nombre de voyageurs dans 3 gares. dans la cellule b5, saisissez une formule qui calcule le total et se met à jour si on change une valeur du tableau. quel total obtenez-vous ? quelle formule avez-vous saisie ? ✓ - Forum Google Docs
2 réponses
Bonjour,
Dans ta feuille 2 tu peux copier le code VBA suivant (mode d'emploi) et tu devrais obtenir ce que tu veux
Dans ta feuille 2 tu peux copier le code VBA suivant (mode d'emploi) et tu devrais obtenir ce que tu veux
Option Explicit
Dim avant As Variant
Private Sub Worksheet_SelectionChange(ByVal sel As Range)
If sel.CountLarge > 1 Then Exit Sub
If Intersect(sel, Range("C:C")) Is Nothing Then Exit Sub
avant = sel.Formula
End Sub
Private Sub Worksheet_Change(ByVal sel As Range)
If sel.CountLarge > 1 Then Exit Sub
If Intersect(sel, Range("C:C")) Is Nothing Then Exit Sub
Dim cel As Range
Set cel = Sheets(1).Columns(1).Find(Cells(sel.Row, 1), [A1], xlValues, xlWhole)
cel.Offset(0, 5).Value = sel.Value
Application.EnableEvents = False
sel.Formula = avant
Application.EnableEvents = True
End Sub
Avec un peu de retard, désolé, je voulais te remercier pour ta réponse.
Malheureusement je n'ai pas su faire fonctionner ta macro, et vu l'urgence et l'importance de la situation, j'ai fait quelque chose de manuel pour l'instant.
J'essayerai de décortiquer ça par la suite quand le reste de mon fichier sera plus abouti.
Merci encore et bon weekend.