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 :

User form > problème copie de fichier vers onglet [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Par défaut User form > problème copie de fichier vers onglet
    Bonjour,

    je suis un novice en VBA et je suis en train de faire un userform. J'ai déjà fini ma présentation avec des boutons enregistrer, effacer, et quitter. Tous mes textbox ou combobox sont bien paramétrer.

    Mon problème viens de mon bouton enregistrer. Il me mets un message pour confirmer l'enregistrement. En cliquant sur oui, ils sont copier dans un onglet. J'aimerais qu'il soit copié dans un onglet précis. Si je suis dans mon onglet en question, les données se copie bien la ou je le désire, et la suite. Maintenant si je suis sur un autre onglet quand je lance mon userform, les données se copie dans l'onglet ou je suis. J'aimerais que mes données soit tous le temps copier dans l'onglet FACTURATION.

    Est ce que quel'qu'un peut m'aider ? Je vous remercie

    VOici mon fichier:

    FACTURE.xlsb.xlsm

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 410
    Par défaut
    Bonjour.

    Peux-tu poster le code correspondant à "enregister" ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Par défaut
    Bonjour,

    et voici

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Private Sub CommandButton1_Click() Dim L As Integer
     If MsgBox("Confirmez-vous l’insertion de ce nouveau BAT ?", vbYesNo, "Demande de confirmation d’ajout") = vbYes Then
     L = Sheets("FACTURATION").Range("B65536").End(xlUp).Row + 1
     Range("B" & L).Value = TextBox1
     Range("C" & L).Value = TextBox9
     Range("D" & L).Value = TextBox2
     Range("E" & L).Value = TextBox3
     Range("F" & L).Value = ComboBox2
     Range("G" & L).Value = TextBox4
     Range("H" & L).Value = TextBox5
     Range("I" & L).Value = TextBox6
     Range("J" & L).Value = ComboBox3
     Range("K" & L).Value = ComboBox4
     Range("L" & L).Value = ComboBox5
     Range("M" & L).Value = TextBox7
     End If
     TextBox4 = ""
    ListBox1 = Clear
    ComboBox1 = Clear
    TextBox5 = Clear
    TextBox6 = Clear
    TextBox7 = Clear
    TextBox8 = Clear
    ComboBox2 = Clear
    ComboBox3 = Clear
    ComboBox4 = Clear
    ComboBox5 = Clear
    ComboBox6 = Clear
    TextBox8 = Clear
    End Sub

  4. #4
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Par défaut
    J'ai aussi mis un code pour me vider certaines textbox après enregistrement.

  5. #5
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    1 règle d'or concerne le rattachement des objets.
    Ici, les objets Range ne sont pas rattachés à leur feuille Parent.
    Excel considère donc la feuille active.
    Tu peux donc utiliser le nm de ta feuille sur un bloc With.
    Ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With Worksheets("Facturation")
      dernl = .
      .Range("B" & L).Value =
      etc....
    End With
    Question:
    A quoi correspond cette ligne
    ?

    2 conseils:
    1 - Toujours indenter le code(i.e. positionner en retrait les paragraphes inclus dans un bloc If, With, For....)
    2 - Bien nommer les contrôles en les préfixant par un libellé indiquant leur nature (Txt_lestock, Cbx_service...)
    Le code sera ainsi plus lisible et des boucles seraient envisageables si les cellules sont nommées en adéquation aux contrôles (Cellule nommée "service" informée par Txt_service)

  6. #6
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Mars 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Mars 2019
    Messages : 10
    Par défaut
    Merci pour ton retour.

    Je le met ou ton code exactement? je le mets à la place du mien? je voudrais bien garder mon message avant validation.

    Pour la ligne en question, c'est une erreur.

    Merci pour les conseils, je vais bien renommer mes list....

  7. #7
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Salut,

    Je le met ou ton code exactement? je le mets à la place du mien?
    Ben oui.
    Le bloc With débute avant la ligne de code utilisant son argument objet.

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

Discussions similaires

  1. Problème copie de fichiers
    Par trollichinelle dans le forum Langage
    Réponses: 2
    Dernier message: 26/06/2008, 12h44
  2. copie de fichier vers disques en réseau
    Par maboulette dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 12/01/2008, 14h45
  3. Copie de fichiers vers PPC
    Par rhani-sama dans le forum Framework .NET
    Réponses: 1
    Dernier message: 13/12/2007, 15h20
  4. Copie de fichier vers dossier
    Par crashyear dans le forum Langage
    Réponses: 1
    Dernier message: 26/04/2007, 21h09
  5. class qui copie un fichier vers un dossier...
    Par dimitrimm972 dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 06/04/2006, 22h21

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