Saisie BDD :lecture/sauvegarde
Résolu
New_VBA_User
Messages postés
82
Date d'inscription
Statut
Membre
Dernière intervention
-
New_VBA_User Messages postés 82 Date d'inscription Statut Membre Dernière intervention -
New_VBA_User Messages postés 82 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Fichier d’exemple : https://www.cjoint.com/c/IHBnGhAeKWI
J’aimerai crée une base de données avec des critère de saisie, j’ai besoin d’un peu d’aide pour bien faire des choses, pour ne pas trop chargé le programme, je pense qu’il y a les moyens de faire plus rapidement.
Je tape la valeur d’une ligne dans le textbox « Epuipement » et on vient charger les donné dans les textbox prévue dans frame « Caractéristique » depuis la feuille "Filtered Data SAP"
Et les bouton Next et Previous permet de lire les ligne haut et en bas depuis la ligne sélectionné, la ligne sélectionné à un tour de retard je ne sais pas pourquoi ?
Ce que j’aimerai faire c’est saisir les données dans les autres champ vides et les enregistrés avec le bouton « Save Data » dans la feuille « DataBase Application » avec les critères défini.
À chaque valeur saisie dans le textbox « Epuipement » charger les données de tous les champs.
Je ne sais pas s’il y a un moyen avec des boucles pour ne pas copier 100 lignes.
Merci de votre aide.
Salutations.
Fichier d’exemple : https://www.cjoint.com/c/IHBnGhAeKWI
J’aimerai crée une base de données avec des critère de saisie, j’ai besoin d’un peu d’aide pour bien faire des choses, pour ne pas trop chargé le programme, je pense qu’il y a les moyens de faire plus rapidement.
Je tape la valeur d’une ligne dans le textbox « Epuipement » et on vient charger les donné dans les textbox prévue dans frame « Caractéristique » depuis la feuille "Filtered Data SAP"
Et les bouton Next et Previous permet de lire les ligne haut et en bas depuis la ligne sélectionné, la ligne sélectionné à un tour de retard je ne sais pas pourquoi ?
Ce que j’aimerai faire c’est saisir les données dans les autres champ vides et les enregistrés avec le bouton « Save Data » dans la feuille « DataBase Application » avec les critères défini.
À chaque valeur saisie dans le textbox « Epuipement » charger les données de tous les champs.
Je ne sais pas s’il y a un moyen avec des boucles pour ne pas copier 100 lignes.
Merci de votre aide.
Salutations.
Configuration: Windows / Edge 18.17763
4 réponses
Résumé de la discussion
La problématique porte sur la création d'une base de données avec des critères de saisie et l'automatisation du chargement des valeurs depuis la feuille Filtered Data SAP vers les champs du cadre Caractéristique. Plusieurs éléments évoqués concernent la navigation avec les boutons Next et Previous pour lire les lignes autour de la sélection, l'effet de retard de la ligne sélectionnée et l'enregistrement des données dans DataBase Application. Des propositions techniques visent à charger automatiquement les données lors de chaque saisie dans Équipement, à utiliser des boucles et à aligner les noms de champs via une liste référencée.
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, veux-tu dire que ta procédure TextBox_EquipementSAP_Change ne fait pas ce que tu souhaites?
peux-tu expliquer à nouveau en mentionnant tes procédures dans la description?-
Bonjour,
tout ce qu'il y est dans la procédure TextBox_EquipementSAP_Change, fonctionne, je pense que pour charger les donné dans les autres champs vide depuis la feuille « DataBase Application », je dois écrire une ligne pour chaque critère (env. 100 critère) est-ce qu'il y a un moyen autre de faire ça dans écrire 100 lignes env.
je sais si c'est claire comme ça sinon je suis dispo pour d'autres renseignement.
Merci -
-
-
-
-
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
qu'essaies-tu de faire ainsi?val.Select Me.TextBox_EquipementSAP.Value = Selection.Offset(1, 0).Value ' Displays the value of a next line (down) val.Select
que veux-tu dire par "la ligne sélectionné à un tour de retard"?
peut-être voudrais-tu faire:val.Offset(1, 0).Select Me.TextBox_EquipementSAP.Value = Selection.Value
-
-
Bonjour New_VBA_User
Une derniere intervention et je vous laisse avec yg_be.
Pour Vos 100 critères, vu que vous avez déjà le nom des textboxs, au plus simple, vous creez un tableau avec le nom des 100 textbox dans l'ordre. Ensuite vous faites une boucle comme ceci
'Table nom textboxs TTextbox = Array("TextBox_Ver", etc) With Worksheets("Criteria") For n = 0 To 99 Me.Controls(TTextbox(n)) = .Cells(n + 2, 1) Next n End With -
-
-
Bonjour,
Je reviens concernant cette discussion, j'ai essayé de comprendre les différent solutions proposé, mais j'y arrive pas.
Je n'essaye pas de créer des nom des textbox à partir des entêtes de colonne.
Je veux écrire la valeur dans les textbox vides et les enregistré dans une feuille Excel et ensuite charger ces même donné quand le textbox équipement change.
est-ce possible que vous m'aidiez en faisant des tests ou des solutions directement dans le fichier exemple, car quand le code est directement proposé dans les réponse, je ne sais pas ou intégrer dans le programme.
Merci d'avance.
-
-
Bonjour à tous,
Le plus simple, mettre la propriété TabIndex de chaque TextBox en fonction des colonnes:
TextBox_EquipementSAP = TabIndex 0
TextBox_Sortfield= TabIndex 1
etc.
et voici le code:
Dim Ctrl As Control For Each Ctrl In Controls If TypeName(Ctrl) = "TextBox" Then Ctrl.Object.Value = Cells(2, Ctrl.TabIndex + 1) 'ligne 2 a adapter End If Next Ctrl
Si cela avait été fait lors de la conception!!!
La programmation c'est 80% de cogitation à la préparation et 20 % pour le code
-
-
-
-
-
désolé, le commentaire d'avant n'était pas tout toi.
oui, j'ai fait comme ci-dessous et ça ne marche pas.
for ncol = 1 to 22 Me.Controls("TextBox_" + CStr(.Cells(1, ncol))) = .Cells(nom.Row, ncol) next ncol
1 to 22 car j'ai 22 colonne, je pense que c'est correct et la ligne suivant avec controls je ne sais pas comment adapté comme t'avais demandé.
au secours, ça devient urgents, depuis quelques jours de je galère sur ça.
Merci
-
-
Merci à tous pour votre aide.
C'est sympa de compter sur une vrai communauté VBA :)