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 :

Tableau Excel vers formulaire


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Retraite
    Inscrit en
    Mars 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Mars 2015
    Messages : 10
    Par défaut Tableau Excel vers formulaire
    Bonjour,
    Je suis un novice en programmation VBA su Excel. Et j'ai crée un formulaire de saisie pour apprendre et par la suite l'utiliser dans une petite association.
    Mon problème est de pouvoir à l'aide d'un bouton de commande "Modifier", "reprendre" les données enregistrées dans le tableau Excel de les "remettre" dans le Formulaire afin de pouvoir les modifier.

    Pouvez-vous, vous les professionnels me donner un "coup de main" ?
    Merci à l'avance.

    C'est un formulaire comprenant :
    • 5 Labels
    • 5 Texts box
    • 1 Bouton "Valider" (Qui fonctionne bien)
    • 1 Bouton "Modifier" (que je n’arrive pas à coder)
    • 1 Bouton "Quitter" (Qui fonctionne bien)



    Voici ci-dessous les codes que j'ai écris:

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    Option Explicit
    Dim Ws As Worksheet
     
    Private Sub cmdnouveau_Click()
        Dim L As Integer
            If MsgBox("Confirmez-vous l'insertion de cette nouvelle saisie ?", vbYesNo, "Demande de confirmation d'ajout") = vbYes Then
            'Pour placer le nouvel enregistrement à la premiere ligne du tableau, non vide
                L = Sheets("ESSAI 1").Range("A100").End(xlUp).Row + 1
                    Range("A" & L).Value = txtacte
                    Range("B" & L).Value = txtdaterencontre
                    Range("C" & L).Value = txtdatebapteme
                    Range("D" & L).Value = txtnom
                    Range("E" & L).Value = txtprenom
            End If
                Unload Me
                    UserForm1.Show
     
    End Sub
     
    Private Sub cmdmodifier_Click()
        Dim Ligne As Long
            Dim I As Integer
                If MsgBox("Confirmez-vous la modification de cette saisie ?", vbYesNo, "Demande de confirmation de modification") = vbYes Then
                    If txtacte = -1 Then Exit Sub
                        Ligne = txtacte + 2
                            Ws.Cells(Ligne, "B") = "txtdaterencontre"
                                For I = 1 To 5
                                    If txtacte("txtacte" & I).Visible = True Then
                                        Ws.Cells(Ligne, I + 2) = ("txtacte" & I)
                                    End If
                                Next I
                    End If
     
                    Unload Me
                        UserForm1.Show
     
      End Sub
     
    Private Sub cmdquitter_Click()
       Unload Me
     
    End Sub

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Je ne comprends pas ce que tu attends. Quel est ton problème ? Dans quelle mesure ton code ne fais pas ce que tu souhaites ?

  3. #3
    Membre régulier
    Homme Profil pro
    Retraite
    Inscrit en
    Mars 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Mars 2015
    Messages : 10
    Par défaut BSMAV
    Bonjour
    Je viens de voir votre réponse.
    En fait voilà ce qui se passe:
    Quand je clique sur le bouton "Modifier" de mon formulaire j'ai un message "Erreur 13" Incompatibilité de message.
    Et donc quand je "Débogue", sur les code VBA: la ligne "Ligne= txtacte +2" est surlignée en jaune montrant qu'il y a un problème.

    Ci-dessous, les codes du bouton "Modifier"

    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 cmdmodifier_Click()
    ' On défini les variables
            Dim Ligne As Long
            Dim I As Integer
            'Demande de confirmation avant enregistrement des modifications ou saisies
                If MsgBox("Confirmez-vous la modification de cette saisie ?", vbYesNo, "Demande de confirmation de modification") = vbYes Then
                    If txtacte = -1 Then Exit Sub
                        Ligne = txtacte + 2
                            Ws.Cells(Ligne, "B") = "txtdaterencontre"
                                For I = 1 To 5
                                    If txtacte("txtacte" & I).Visible = True Then
                                        Ws.Cells(Ligne, I + 2) = ("txtacte" & I)
                                    End If
                                Next I
                    End If
                 'On ferme le formulaire
                    Unload Me
                    'On réouvre le formulaire
                        UserForm1.Show
     
      End Sub
    Ci dessous le tableau que je souhaite modifier par le bouton de contrôle "Modifier", c'est à dire reprendre, par exemple la ligne 1.
    Par contre la saisie par mon formulaire se fait très bien
    Je suis désolé, mais je ne sais pas comment vous transmettre le formulaire afin que vous puissiez voir à quoi il ressemble.

    N° Acte Date Rencontre Date Baptême Nom Prénom
    1 12/02/2015 23/08/2015 Marc Jean
    2 23/02/2015 23/08/2015 Rabier Jules

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Bonjour,


    avec Val c'est pas mieux ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Ligne = Val(txtacte) + 2

  5. #5
    Membre régulier
    Homme Profil pro
    Retraite
    Inscrit en
    Mars 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Retraite

    Informations forums :
    Inscription : Mars 2015
    Messages : 10
    Par défaut
    Du coup, j'ai un message:
    Erreur d’exécution (91)
    Variable objet ou variable de bloc With non défini
    Et la ligne ci-dessous est en jaune.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Ligne =Ws.Cells(Ligne, "B") = "txtdaterencontre"

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Et comment déclare tu ta variable WS ? ou est le code où tu lui affecte une feuille de ton classeur ?

    ensuite tu veux vraiment écrire dans ton classeur le texte : txtdaterencontre ou le contenu du text box : txtdaterencontre , dans le second cas il faut enlever les guillemets..

Discussions similaires

  1. tableau excel vers mysql
    Par phpaide dans le forum Outils
    Réponses: 9
    Dernier message: 13/12/2013, 09h55
  2. Export d'un tableau Excel vers Word
    Par Flo88 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 26/01/2009, 15h39
  3. export tableau excel vers word
    Par camzo dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/10/2007, 18h53
  4. données tableau excel vers table access ?
    Par alexkickstand dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 24/09/2007, 21h11
  5. Transférer un tableau excel vers access avec VBA (bug)
    Par beegees dans le forum VBA Access
    Réponses: 2
    Dernier message: 18/07/2007, 09h28

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