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 :

Mise a jour de données via formulaire


Sujet :

Macros et VBA Excel

  1. #21
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut
    Le double Poste est volontaire, pour éviter de trop embrouiller le "client"

    Alors du coup si tu reprend ton code de départ, la variable Public n'est plus nécessaire, puisque tu reste dans le même UserForm.

    Tu peux donc écrire
    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
    16
    17
    18
    19
    20
    21
    Private Sub CommandButton2_Click()
    Dim Lig As Long
    Dim ws As Worksheets
    Set ws = Worksheets("Feuil1")
     
    Lig = choix_nom.ListIndex
     
    ws.Cells(Lig, 1).Value = Me.Nom.Value
    ws.Cells(Lig, 2).Value = Me.photo.Value
    ws.Cells(Lig, 3).Value = Me.Tph.Value
    ws.Cells(Lig, 4).Value = Me.valmarch.Value
    ws.Cells(Lig, 5).Value = Me.prixht.Value
    ws.Cells(Lig, 6).Value = Me.livraison.Value
    ws.Cells(Lig, 7).Value = Me.tva.Value
    ws.Cells(Lig, 8).Value = Me.etattva.Value
    ws.Cells(Lig, 9).Value = Me.prixttc.Value
    ws.Cells(Lig, 10).Value = Me.ventemin.Value
    ws.Cells(Lig, 11).Value = Me.venteestim.Value
    ws.Cells(Lig, 12).Value = Me.ecart.Value
     
    End Sub
    ++
    Qwaz

  2. #22
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 82
    Points : 37
    Points
    37
    Par défaut
    Ok merci

    Mais le il me donne des erreurs

    En mettant le code comme inscrit j'obtient une erreur
    13 incompatibilité
    En me surlignant: Set ws = Worksheets("Feuil1")

  3. #23
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Normal,
    pas Worksheets

    Worksheets représente une collection de Feuilles, alors que Worksheet represente une Feuille, contenue accessoirement dans une collection de Feuilles.

    C'est le principe des objets et des collections

    ++
    Qwaz

  4. #24
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 82
    Points : 37
    Points
    37
    Par défaut
    Merci mais cela ajoute une nouvelle ligne plutot que de remplacer

  5. #25
    Expert éminent
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    3 906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 906
    Points : 8 539
    Points
    8 539
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Lig = choix_nom.ListIndex + 2
    Vu que tu utilises cette valeur majoré de 2 pour définir le contenu des tes contrôle, en effet il faut faire de même.
    A moins que le contenu de Choix_Nom change en cours de route??

    Il serait quand même intéressant de lire quelques tutoriels pour comprendre un minimum l'utilisation de Cells ou au moins lire l'aide.
    Cells(x,y)
    y => Représente le numero de la colonne
    x => Représente le numero de la ligne

    Si tu veux modifier la cellule A3, ca te donne x=3, y=A. Regarde ton tableau, et fait en sorte que la valeur de x (dans ton code Lig) corresponde au numéro de la ligne a modifier.
    Si tu n'y arrive toujours pas, met ton fichier, je suis patient, mais bon la ça n'a aucun intérêt, ni pour toi ni pour moi.

    ++
    Qwaz

Discussions similaires

  1. [AC-2003] Mise à jour d'une donnée via formulaire
    Par Lafouine4478 dans le forum IHM
    Réponses: 6
    Dernier message: 21/02/2011, 09h22
  2. [MySQL] Affichage et mise a jour de données via un lien
    Par argon dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 29/06/2008, 13h30
  3. mise a jour des données d'un formulaire
    Par imeys dans le forum IHM
    Réponses: 3
    Dernier message: 28/08/2007, 23h57
  4. Mise à jour de tables via formulaire
    Par sunwind dans le forum IHM
    Réponses: 4
    Dernier message: 09/12/2006, 21h09
  5. Mise à jour champs modifés via formulaire
    Par Al3x dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/01/2006, 18h31

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