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 copie données calulées dans tableau en VBA [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Profession indépendande
    Inscrit en
    Octobre 2014
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Profession indépendande
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 102
    Points : 57
    Points
    57
    Par défaut Problème copie données calulées dans tableau en VBA
    Bonjour à tous

    Piètre bricoleur, je bloque sur un code qui me permette de récupérer des données calculée à partit d'un tableau, alimenté et modifié à partir de 2 Userform (Merci à ceux qui m'ont bien aidé sur le précédent post) et les collé en valeur fixe en dernière colonne de ce même tableau.
    Ci-joint fichier exemple
    Joël
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    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
     
    Private Sub CmdModifier_Click()
     
        ' Modifier
        Dim Ctrl As Control
        Dim Colonne As Integer
        Dim Ligne As Long
     
         If Me.CboDate.ListIndex = -1 Then Exit Sub
         Ligne = Me.CboDate.ListIndex + 4
         With Sheets("Données")
             For Each Ctrl In Me.Controls
                 Colonne = Val(Ctrl.Tag)
                 If Colonne > 0 Then
                       .Cells(Ligne, Colonne) = TrouveType(Ctrl)
                     End If
                          Next Ctrl
                 .Cells(Ligne, Sheets("Données").UsedRange.Columns.Count) = Sheets("Feuil1").Range("C24")
         End With
       Unload Me
     
    End Sub

  3. #3
    Membre du Club
    Homme Profil pro
    Profession indépendande
    Inscrit en
    Octobre 2014
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Profession indépendande
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 102
    Points : 57
    Points
    57
    Par défaut
    Re
    Merci
    Le code fonctionne impeccable et réponds à la question posée .
    Par contre à l'usage je m'aperçois que la combobox "CboDate " me provoque des erreurs dans mes données. Pour y remédiez je souhaiterais remplacer la combobox pour une textbox, mais je ne parviens pas à modifier le code.
    Il faudrai que la textbox se charge de la date de la cellule feuil1 F7 afin de pouvoir modifier le lignes corespondante de la feuille Données.
    ci-dessous le code qui fonctionne bien avec la combobox mais que je parviens pas à modifier en textbox et le classeur

    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    Option Explicit
    Dim Ligne As Long
     
     
    Private Sub UserForm_Initialize()
    'CboDate = Date_Visite
    Dim J As Long
     
      With Sheets("Données")
        For J = 4 To .Range("A" & Rows.Count).End(xlUp).Row
          Me.CboDate.AddItem .Range("A" & J)
        Next J
      End With
     
    CboDate.Value = Format(CboDate.Value, "dd/mm/yy")
    End Sub
     
    Private Sub CboDate_Change()
    Dim Ctrl As Control
    Dim Colonne As Integer
     
      If Me.CboDate.ListIndex = -1 Then Exit Sub
      With Sheets("Données")
        Ligne = Me.CboDate.ListIndex + 4
        For Each Ctrl In Me.Controls
          Colonne = CInt("0" & Ctrl.Tag)
          If Colonne > 0 Then Ctrl = .Cells(Ligne, Colonne)
        Next Ctrl
      End With
    End Sub
    Function TrouveType(V)
    TrouveType = V
    If IsDate(TrouveType) = True And InStr(TrouveType, "/") <> 0 And InStr(TrouveType, ":") <> 0 Then TrouveType = Format(TrouveType, "yyyy-mm-dd hh:mm"): Exit Function
    If IsDate(TrouveType) = True And InStr(TrouveType, "/") <> 0 Then TrouveType = Format(TrouveType, "yyyy-mm-dd"): Exit Function
    If IsNumeric(Replace(TrouveType, ".", ",")) = True Then TrouveType = Replace(TrouveType, ",", "."): Exit Function
    End Function
     
     
    Private Sub CmdModifier_Click()
     
        ' Modifier
        Dim Ctrl As Control
        Dim Colonne As Integer
        Dim Ligne As Long
     
         If Me.CboDate.ListIndex = -1 Then Exit Sub
         Ligne = Me.CboDate.ListIndex + 4
         With Sheets("Données")
             For Each Ctrl In Me.Controls
                 Colonne = Val(Ctrl.Tag)
                 If Colonne > 0 Then
                       .Cells(Ligne, Colonne) = TrouveType(Ctrl)
                     End If
                          Next Ctrl
                 .Cells(Ligne, Sheets("Données").UsedRange.Columns.Count) = Sheets("Feuil1").Range("C24")
         End With
       Unload Me
     
    End Sub
     
     
    Private Sub CmdAnnuler_Click()
    Unload Me
    End Sub
    Cdt
    Joël
    Fichiers attachés Fichiers attachés

  4. #4
    Membre du Club
    Homme Profil pro
    Profession indépendande
    Inscrit en
    Octobre 2014
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Profession indépendande
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 102
    Points : 57
    Points
    57
    Par défaut
    Bonjour
    La question posée initialement étant réglée, Je clos le sujet.
    Je vais récréer un post pour la seconde partie de remplacement combobox.
    Merci de votre aide.
    Joël

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

Discussions similaires

  1. [XL-2003] Copie données usf dans une certaine ligne tableau excel
    Par mikam1660 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/06/2010, 17h49
  2. Problème Copy Données d'excel vers access
    Par Schat6903 dans le forum VBA Access
    Réponses: 17
    Dernier message: 14/08/2008, 16h36
  3. Problème de données stockées dans un fichier ?
    Par petitclem dans le forum C++
    Réponses: 26
    Dernier message: 11/07/2008, 12h03
  4. Lecture données importantes dans tableau
    Par TiTiSeb dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 13/07/2007, 15h00
  5. [xsl-fo]Problème de données dynamiques dans un tableau.
    Par Little_flower dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 21/05/2007, 10h35

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