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 :

Enregistrer et modifier à l'aide des variables tableaux


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut Enregistrer et modifier à l'aide des variables tableaux
    Bonjour
    Est il possible de faire un enregistrement n+1 ( le cas des ajouts de clients pour chaque achat) avec les tableaux variable et les transposer sur la feuille excel ? La question suivante : peut on faire une modification de ces données dans les tableaux variables et les reproduire sur la feuille excel ? ( cas d'un nom de client mal écrit et on décide de rectifier). Si oui, voudrais je avoir quelques explications et un exemple de code pour mieux comprendre. Suis débutant dans les variables tableaux.
    Merci

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    bonjour
    la demande n'est pas claire mon ami
    mais si tu cherches un formulaire pour saisir des clients et revenir pour modifier je propose ce fichier
    si c'est ce que tu cherches ... tester le et revenir si besoin d'explication
    Fichiers attachés Fichiers attachés

  3. #3
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    Citation Envoyé par BENNASR Voir le message
    bonjour
    la demande n'est pas claire
    Merci pour votre réponse. Je me réexplique: est il possible de faire des enregistrements successifs dans des variables tableaux et les modifier ? Exemple : j'ai un tableau qui comporte 5 colonnes et des lignes indéterminées. Chaque jour il y a des clients qui viennent faire des achats dans la boutique et donc je note leurs noms puis les autres informations.
    Lorsque je fais l'enregistrement dans la variable tableau et je transpose sur la feuille excel, au lieu que ça s'ajoute au client précédent, non! Ça reste sur la même ligne donc ça efface l'ancien enregistrement.
    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
    .  Private Sub CommandButton1_Click()
    Dim Tablo(): Dim x As Integer
    With Sheets(1)
        Tablo = .Range("Tabl").Value
     
        For x = LBound(Tablo) To UBound(Tablo)
        Tablo(x, 1) = TextBox1
        Tablo(x, 2) = TextBox2
        Tablo(x, 3) = TextBox3
        Tablo(x, 4) = TextBox4
        Tablo(x, 5) = TextBox5
     
        Next
      .Range("Tabl").Value= Tablo
    End With
     
    End Sub
    Maintenant, concernant la modification des valeurs dans la variable tableau si on fait une erreur lors de l'enregistrement des informations du client, est il possible ou bien je fais la modification sur la feuille excel ?
    Voici un peu mon besoin

  4. #4
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,

    Un tuto ici : Utiliser tableaux VBA Excel

  5. #5
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    Merci à toi... Je pars m'abrever avec tes tutos et je reviens.

  6. #6
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    Citation Envoyé par Patrice740 Voir le message
    Bonjour,

    Un tuto ici : Utiliser tableaux VBA Excel
    J'ai vu quelques données intéressantes mais dans mon cas c'est d'ajouter des éléments à la suite de l'autre. Sinon je commence à cerner les tableaux. Je vais essayer d'ajouter Redim pour voir si ça va marcher.
    Merci

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    Je ne comprends pas pourquoi tu passes par une variable tableau en VBA. Par contre, tu serais bien avisé d'utiliser les tableaux structurés. J'ai modélisé les interactions entre un userfrom et un tableau dans cette contribution.

    Sans rechercher obligatoirement du générique, tu pourrais t'appuyer sur la solution que j'ai donnée ici.

    Au delà, je me demande à quoi sert d'utiliser un formulaire en VBA pour saisir des données dans Excel. Avant de vouloir monter l'usine à gaz, il me semblerait opportun de voir si Excel n'offre pas nativement des solutions utilisables, ce qui est le cas!
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  8. #8
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    Merci pour ta contribution... Tu me mets le sourire à la bouche 😁😁🤣🤣🤣🤣
    En fait les tableaux structurés, je les maitrise énormément et comment les remplir avec des informations est une tâche facile pour moi. J'ai créé plusieurs formulaires utilisant ces tableaux là. Mais vois tu? je voudrais progresser en VBA, ce pourquoi j'ai opté pour les variables tableaux. D'après certains tutos sur ce forum, il semblerait que ça optimise les ressources. Sinon j'ai livré plusieurs applications excel avec des tableaux structurés comme Base de données.

  9. #9
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Il y a suffisamment de cas où les arrays sont intéressants et utiles que pour ne pas s'en inventer lorsque c'est inutile En matière d'optimisation, les arrays améliorent effectivement la rapidité d'exécution, mais sur des grandes plages de données, pas du tout lorsqu'il s'agit de transférer des données d'un userform aux cellules d'une feuille Excel.

    Tes arrays sont des variables donc temporaires par définition, de sorte que tu ne peux t'en servir pour stocker de l'info au delà de l'exécution du code, sauf à les déclarer Public, et encore. Si tu dois saisir des données successives au travers d'un useform, tu les pousseras dans une feuille Excel (tableau structuré) qui conservera les données, et pas dans un array qui peut les perdre à tout moment et qui est en mémoire vive de ton pc. Ca n'a pas de sens d'utiliser l'array ici.

    Je comprends bien la volonté de s'améliorer en VBA, mais utiliser un array dans ton cas n'est pas utile et ne permettra donc pas de s'améliorer. Proposer des exercices inutiles juste pour manipuler une notion me semble être une démarche douteuse sur le plan pédagogique.


    De plus, dans ton cas, Redim Preserve ne pouvant être utilisé que pour modifier la dernière dimension du tableau, tu vas devoir organiser ton array "transposé" par rapport à ta feuille Excel (Les lignes en colonnes et les colonnes en ligne), de sorte que tu seras obligé de le "re transposer" avec Application.Transpose pour le pousser en un bloc dans tes cellules.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  10. #10
    Membre éclairé
    Homme Profil pro
    instituteur
    Inscrit en
    Juillet 2018
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : instituteur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2018
    Messages : 617
    Par défaut
    merci infiniment pour l'éclaircissement. c'est du lourd ça. avec mon niveau actuel, je crois que c'est impossible je crois que je vais opter pour ma solution basique et utiliser les array uniquement pour stocker de petite données. merci

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

Discussions similaires

  1. [Toutes versions] USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire.
    Par Philippe Tulliez dans le forum Contribuez
    Réponses: 113
    Dernier message: 06/03/2025, 19h03
  2. Variable tableau comportant des variables tableaux? Avec MATCH ou FINDNEXT?
    Par IZZYDEBUTANT dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/10/2020, 10h39
  3. [XL-2010] Simplifier code à l'aide de variables tableaux
    Par Alasgard dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 16/03/2016, 11h41
  4. Imbriquer des variables tableaux
    Par mennix dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/04/2011, 15h23
  5. [VB6] [Fichier] Enregistrer des variables de structure
    Par de.bo dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/10/2002, 11h09

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