IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Revenir au dernier enregistrement et récupérer les coordonnées


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2019
    Messages : 12
    Par défaut Revenir au dernier enregistrement et récupérer les coordonnées
    Bonjour,

    Je poste se message car je me retrouve bloqué:
    Contexte: J'ai un tableau excel qui contient sur la feuil1, en tête des colonnes (C2,D2,E2...) des noms de projets, et sur les lignes des n° de gamme propre à tou les projets (C4,C5,C6,...). Je souhaite que quand l'utilisateur appuis sur ENTER pour modifier une valeur de la Feuil1 le nom de projet de la colonne concerné soit récupéré, et récupérer le n° de gamme de la ligne concerné.

    Problématique: Quand l'utilisateur appuie sur entrer la cellule active fait +1, et je repère les coordonnées de cette cellule, mais pas de celle qui vient d'être modifié.

    Please help me !

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par Néroxi Voir le message
    Je souhaite que quand l'utilisateur appuis sur ENTER pour modifier une valeur de la Feuil1
    Tu veux parle de la modification des lignes 2 et 4 ?

    le nom de projet de la colonne concerné soit récupéré, et récupérer le n° de gamme de la ligne concerné.
    Qu'il soit récupéré dans quoi ?

    Problématique: Quand l'utilisateur appuie sur entrer la cellule active fait +1, et je repère les coordonnées de cette cellule, mais pas de celle qui vient d'être modifié.
    Comment "repères"-tu ces coordonnées ? Avec une macro Change ?

  3. #3
    Membre averti
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2019
    Messages : 12
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Tu veux parle de la modification des lignes 2 et 4 ?
    Non, l'utilisateur peut modifier les valeurs de D4 à AF41

    Citation Envoyé par Menhir Voir le message
    Qu'il soit récupéré dans quoi ?
    Dans un objet ou variable afin de les stocker

    Citation Envoyé par Menhir Voir le message
    Comment "repères"-tu ces coordonnées ? Avec une macro Change ?
    Et bien justement je n'y arrive pas j'ai testé: Feil1.Cells(Target.Row - 1, ActiveCell.Column).Select
    mais rien n'y fait je ne trouve pas

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Je ne parviens pas à comprendre le principe de ce que tu veux créer.
    Tu parles de macro et de saisie opérateur dans une cellule. Il est rare que les deux aillent ensemble, à moins que la saisie se fasse "hors macro" et que ce soit elle qui déclenche une macro évènementielle comme Worksheet_Change.

    Mais dans ce cas, je ne vois pas l'intérêt de mettre cette information dans une variable qui aura comme durée de vie le temps de la macro, c'est-à-dire une fraction de secondes.

    Mais voici le principe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Worksheet_Change(ByVal Target as Range) 
        Dim MaPosition As Range
        Set MaPosition = Target
    End Sub
    Il serait préférable que tu expliques dans quel contexte tu veux récupérer cette valeur et ce que tu comptes en faire (il est difficile d'imaginer que le mettre dans une variable soit la finalité).

  5. #5
    Membre averti
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2019
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2019
    Messages : 12
    Par défaut
    Quand l'utilisateur modifie une valeur dans L’intervalle D4:AF42 :
    1) je dois récupérer les valeurs des cellules Cx et Bx (x étant la ligne modifier donc une variable aléatoire indiquée par l'utilisateur)
    2) je dois récupérer la valeur de projet y2 (y étant la colonne modifier donc une variable aléatoire indiquée par l'utilisateur)
    3) Ces trois valeurs sont collées en feuil2 sur deux colonnes différentes

    code actuel:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Not Application.Intersect(Target, Range("D4:AF42")) Is Nothing Then
            Dim Rep As Integer 'création d'objet qui va enregistrer le clique du bouton sur la MsgBox
            Rep = MsgBox("Avez-vous modifié une valeur ?" _
                & Chr(10) + Chr(10) + Chr(13) & "Cliquer sur ok pour continuer !", vbQuestion + vbYesNo + vbSystemModal, "Modification")
            If Rep = vbYes Then
     
                 'récupération des data
     
            End If
        Else
     
        End If
     
    End Sub

  6. #6
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    si j'ai compris la demande tu cherches a savoir le nom de projet en ligne 2 et le numéro de gamme en colonne C
    si c'est le cas je propose un clic droite du souris avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    L = ActiveCell.Row
    C = ActiveCell.Column
    MsgBox ("Le projet  est : " & Cells(2, C) & "   la Gamme est :  " & Cells(L, 3))
    End Sub
    voila un exemple (CLIC DROITE SOURIS )
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/11/2009, 11h56
  2. Comment récupérer les coordonnées d’un clique sur une image ?
    Par da_sys dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/11/2006, 12h34
  3. Comment récupérer les coordonnées sur le bureau d'une form ?
    Par fma2112 dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 22/02/2006, 23h43
  4. récupérer les coordonnées d'un rectangle
    Par robocop2776 dans le forum MFC
    Réponses: 3
    Dernier message: 01/11/2005, 19h31
  5. [GRAPHIQUE] Récupérer les coordonnées d'un point
    Par freud dans le forum Composants VCL
    Réponses: 6
    Dernier message: 29/09/2005, 12h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo