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 :

Créer formulaire de saisie pour éviter de se déplacer dans une matrice de fou


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Inscrit en
    Juin 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juin 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Créer formulaire de saisie pour éviter de se déplacer dans une matrice de fou
    Bonjour a tous, je me débrouille un peu sur excel mais là, je sèche.
    Mon problème est que j'ai un très grand tableau avec plusieurs colonnes et plusieurs lignes (la premier colonne est la clé car elle correspond au critère date - les mois)
    Par le biais de la fonctions Recherch, je sais lire le contenu de la cellule en me basant sur le critere 1ere colonne, critere choise et numero de position (nbre de colonne par rapport au critete date) mais cette fois ci je voudrais NON LIRE mais RENSEIGNER une CELLULE SANS ME DEPLACER.
    En fait, je voudrais éviter d'avoir a me deplacer sur n ligne et n colonne pour renseigner la cellule juste me baser sur deux criteres :
    Numéro de ligne et Numéro de colonne afin de remplir le contenu de la cellule.
    En gros, je voudrais une sorte de formulaire de saisie de champs un peu comme pour les bases de données sans avoir a me prendre la tête dans les deplacments.
    Si cette fct existe sur excel merci de me la donner sinon merci de me donner le code VB.
    Si mon explication est un peu confuse, veuillez trouver le fichier ci suit (un exemple vaut mieux qu'un long discours).
    Merci d'avance pour votre sympathie et votre gentillesse.
    Excelement,
    Ingrid
    Fichiers attachés Fichiers attachés

  2. #2
    Membre chevronné
    Avatar de NVCfrm
    Homme Profil pro
    Administrateur Système/Réseaux - Developpeur - Consultant
    Inscrit en
    Décembre 2012
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Administrateur Système/Réseaux - Developpeur - Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 036
    Points : 1 917
    Points
    1 917
    Billets dans le blog
    5
    Par défaut
    bonsoir,

    Pour ceci
    En fait, je voudrais éviter d'avoir a me deplacer sur n ligne et n colonne pour renseigner la cellule juste me baser sur deux criteres :
    Numéro de ligne et Numéro de colonne afin de remplir le contenu de la cellule.
    Ce que ça m'inspire comme réponse:
    Figer les volets sur la zone que tu voudrais maintenir visible.
    Dans Zone nom: (Le volet situé à gauche de la barre de formules)
    Taper LxCx (x étant le numéro d'indice).

  3. #3
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Points : 2 553
    Points
    2 553
    Par défaut
    Un userform à 3 champs, numligne, numcol, datas
    Un bouton valider dans lequel on codera

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Valider_click()
    Activesheet.cells(numligne.value,numcol.value)=datas
    End Sub
    Useless? Oui.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour à tous

    Pourquoi faire un Userform ?

    Une simple recherche des valeurs renseignées suffirait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Worksheet_Change(ByVal Target As Range)
      Dim Col As Long, Lig As Long
      ' Si le nombre de ligne sélectionné est > 1, on sort
      If Target.Count > 1 Then Exit Sub
      ' si la cellule modifiée est différent de L2, on sort
      If Target.Address <> "$L$2" Then Exit Sub
      ' On a modifié la cellule : champ à renseigner
      Col = Application.WorksheetFunction.Match("*" & Range("C2") & "*", Rows(7), 0)
      Lig = Application.WorksheetFunction.Match(Range("G2"), Range("A:A"), 0)
      ' Inscrire la formule
      Cells(Lig, Col).Value = Range("L2").Value
    End Sub


    A+
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 0
    Dernier message: 06/04/2010, 16h50
  2. Réponses: 5
    Dernier message: 05/08/2009, 17h51
  3. Réponses: 0
    Dernier message: 07/04/2008, 17h56
  4. Réponses: 1
    Dernier message: 30/04/2007, 22h55
  5. Réponses: 12
    Dernier message: 19/04/2007, 10h45

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