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 :

Problème avec l'insertion d'une ligne et l'initialisation d'un formulaire [XL-2016]


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
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2019
    Messages : 15
    Par défaut Problème avec l'insertion d'une ligne et l'initialisation d'un formulaire
    Bonjour à tous,

    Tout d'abord, je vous remercie de faire vivre ce forum qui une vraie aide pour tous étudiant.
    J'ai donc deux soucis avec un classeur que je réalise dans le cadre de mon stage dans une entreprise.

    Le premier problème :
    Je n'arrive à insérer une ligne dans dans une feuille avec l’écriture suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("A11").EntireRow.Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrBelow
    Cela vient du fait que je ne peux pas insérer de ligne tout simplement dans le tableau concerné.
    J'ai essayé toutes les différentes techniques qui permettent d’effacer les lignes sous le tableau qui aurait pu coincer mais rien n'y fait.
    Cela m’énerve d'autant plus que je peux insérer des colonnes.
    Connaissez-vous une autre possibilité que je n'aurais pas essayée ?

    Second problème :
    Lorsque j'initialise un second formulaire grâce à un bouton situé dans un premier formulaire.
    Je voudrais que deux TextBox prenne les valeurs de deux cellules donnés.
    J'ai essayé beaucoup de proposition comme celle ci-dessous, mais rien ne se passe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub devisform_Initialize()
     
    With ThisWorkbook.Sheets("Prospects")
        Me.Text1.Value = LaValeur.Range("D6")
        Me.Text2.Value = LaValeur.Range("E6")
    End With
     
    End Sub
    Je fais donc appel à vous et vous remercie d'avance pour vos réponses.

  2. #2
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Pour la 1 (inutile de présélectionner la cellule):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("A11").EntireRow.Insert Shift:=xlDown
    Pour la 2:
    remplacez Value par Text.

    Cdlt

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2019
    Messages : 15
    Par défaut
    Merci de cette réponse rapide,

    Mais le même problème d’exécution (1004) s'affiche et me propose le débogueur quand j’exécute la macro avec l'insertion de ligne...
    Et malheureusement je n'ai toujours rien avec Text au lieu de Value...

    Bonne journée à vous

  4. #4
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Essayez ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub userform_Initialize()
        TextBox1.Text = LaValeur.Range("D6")
        TextBox2.Text = LaValeur.Range("E6")
    End Sub
    Pour l'insertion de ligne, pouvez-vous en insérer une manuellement?

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2019
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2019
    Messages : 15
    Par défaut
    Merci ARTURO pour votre patience,

    Mais à nouveau je n'ai rien qui s'affiche dans les TextBox avec votre proposition.

    Et non manuellement je n'y arrive pas et c'est de la que vient le problème je pense.

    Je me permets de vous joindre un exemple vide du fichier sur lequel j'ai ces difficultés et j'ai annoté les lieux des erreurs dans les codes (module 4/macro11 et devisform).
    Fichiers attachés Fichiers attachés

  6. #6
    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 : 68
    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 Vatreni, Bonjour au Forum,

    Quelques conseils que, et je m'en excuse, je reprends souvent
    - Nommer les contrôles en utilisant un préfixe indiquant sa nature (Txt_Nom, Cbx_Localités)
    - Même si elles sont implicites, préciser les propriétés (.Value ou, ici, .[D6])
    - Rendre la déclaration des variables obligatoire (Dans le VBE, Menu Outils\Options)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TextBox1.Text = LaValeur.Range("D6")
    A quoi correspond ?
    S'il s'agit, comme on peut le présumer, d'une feuille de travail alors le nom de variable est mal choisi.
    Quand bien même, où et comment cette variable est-elle affectée?

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

Discussions similaires

  1. [AC-2002] Problème avec un Insert sur une BDD oracle
    Par imaril dans le forum VBA Access
    Réponses: 0
    Dernier message: 07/09/2011, 11h35
  2. Problème avec l'insertion dans une ArrayList
    Par LoveIinfo dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 08/06/2011, 22h29
  3. Réponses: 4
    Dernier message: 21/07/2010, 16h18
  4. Réponses: 2
    Dernier message: 02/04/2009, 12h23
  5. Problème avec l'insertion d'une image dans JPanel
    Par anutka dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 16/03/2006, 10h02

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