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

Excel Discussion :

VBA : Récupérer les valeurs de 2 champs pour les recopier dans une autre feuille


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Suivi Evaluation
    Inscrit en
    Novembre 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Suivi Evaluation
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2010
    Messages : 54
    Points : 51
    Points
    51
    Par défaut VBA : Récupérer les valeurs de 2 champs pour les recopier dans une autre feuille
    Bonjour,

    Dans un cahier Excel 2016 (nom « Application »), je dispose d’une feuille pour la base de données (nom « BdD » au format Tableau) avec diverses colonnes dont une ANNEE pour l’année ex : 2014, 2015, 2016 et une autre TRIMESTRE avec le trimestre considéré ex : 1° Trim, 2° Trim, 3° Trim, …
    Je souhaite récupérer la valeur du dernier trimestre pour la dernière année (valeurs modifiées à chaque mise à jour de la base) pour afficher ces valeurs dans une autre feuille (nom « TB » Tableau de Bord) afin d’indiquer la dernière date (Année + Trimestre) de la mise à jour.
    Je sais que le VBA peut le faire mais je ne le maîtrise pas encore suffisamment. Merci d’avance.

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    Puisque vous disposez d'un tableau (base de données), je suggère la fonction BDMAX (ou Dmax en anglais). La fonction aide de Excel vous guidera pour la suite.

  3. #3
    Membre du Club
    Homme Profil pro
    Suivi Evaluation
    Inscrit en
    Novembre 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Suivi Evaluation
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2010
    Messages : 54
    Points : 51
    Points
    51
    Par défaut Utiliser BDMAX pour renvoyer la valeur de 2 champs dans une autre feuille
    Bonjour,

    Merci pour l'indication. J'ai utilisé la fonction BDMAX. Cela fonctionne à condition de créer une plage de critère vide pour l'année et une autre plage de critères avec l'année trouvée par la première fonction ANNEE pour trouver le trimestre. Il faut aussi que le trimestre soit en numérique.
    N'y a t il pas une solution plus élégante en VBA?

  4. #4
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour
    je ne vais personnellement pas aller plus loin que faire une remarque concernant ceci :
    Il faut aussi que le trimestre soit en numérique.
    N'y a t il pas une solution plus élégante en VBA?
    Tu le vois, l'adjectif que j'ai mis en rouge ?
    La toute première "élégance" est pour moi celle manifestée tant à l'égard de Excel lui-même qu'à l'égard de l'utilisateur --->>
    Tes 1° Trim, 2° Trim, 3° Trim, … ne seraient que des nombres si :
    --- soit mis dans une colonne "N° du trimestre"
    --- soit mis dans une cellule avec format personnalisé
    De cette manière :
    1) élégance vis-à-vis de Excel (il aurait des nombres et non du texte)
    2) élégance à l'égard de l'utilisateur, qui n'aurait qu'un chiffre à saisir.
    Ne me dis surtout pas à ce dernier propos que tu "offres" une liste déroulante (1,2,3,4), dont l'utilisation demanderait plus de gestes que la simple frappe d'un seul chiffre.
    Alors ? Où est la véritable "élégance", avant même d'avancer ce mot ?
    Je vais maintenant à ma siestita.
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  5. #5
    Membre du Club
    Homme Profil pro
    Suivi Evaluation
    Inscrit en
    Novembre 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Suivi Evaluation
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2010
    Messages : 54
    Points : 51
    Points
    51
    Par défaut
    [Merci pour la réponse, on apprend tous les jours! Il n'y avait rien d'offensant dans le terme élégant. GDM

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/10/2017, 14h27
  2. [AC-2003] Comment en VBA récupérer la valeur d'un champ d'un Etat
    Par slu974 dans le forum VBA Access
    Réponses: 1
    Dernier message: 12/08/2015, 14h17
  3. Réponses: 3
    Dernier message: 29/04/2010, 13h54
  4. Réponses: 2
    Dernier message: 14/07/2009, 08h45
  5. valeur d'un champ pour l'utiliser dans une requete
    Par bachilbouzouk dans le forum ASP
    Réponses: 4
    Dernier message: 08/04/2005, 16h58

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