Ajouter une ligne en fonction d'une saisie

Fermé
Brasiligun Messages postés 122 Date d'inscription mardi 29 décembre 2009 Statut Membre Dernière intervention 4 mars 2019 - 1 mars 2019 à 10:06
Brasiligun Messages postés 122 Date d'inscription mardi 29 décembre 2009 Statut Membre Dernière intervention 4 mars 2019 - 4 mars 2019 à 14:54
Bonjour à tous,

Je me tourne vers vous pour une petite question. Je bute sur quelque chose d'assez simple, je l'ai fait il y a quelques années, mais pas moyen de réussir cette opération à nouveau, je passe à coté.

J'ai une problématique d'apparence simple :

J'ai un fichier de 2 pages:
- La 1ère indique en fonction d'une équipe (section), puis d'une certaine série, les opérations réalisables sur cette série, en indiquant les conditions et les nécessités d'équipements pour réaliser cette opération

- La 2ème est juste la base de données qui fournie les infos pour la page1.


Plus simplement, la page 1 est une triple listes en cascades. Je vous sollicite pour un petit coup de main, sur la page "BD" (page 2), je souhaiterai ajouter une macro, qui ajoute en ligne supplémentaire pour la section voulue, en demandant pour quelle série, et en laissant les autres champs vides (l'utilisateur remplira lui même plus tard).

Par exemple:

Pour la section 1, je souhaiterai ajouter pour la série Orange une nouvelle ligne

Pour la section 4, nouvelle ligne pour la série Bleu

J'essaye d'être le plus explicite possible, j'ai bien conscience que cela peu sembler flou. Veuillez trouver-ci joint mon fichier, avec mes macros (qui fonctionnent actuellement). J'ai volontairement laissé le nouveau bouton "Ajout données" sans macro (comme mes tests ne sont pas encore concluant)

Fichier: https://1drv.ms/x/s!Aqfw8DZtbz2zrSkLKBHZld8p5X8V
(le mdp est "lock")

Il faudrait donc ajouter une ligne après indication de la section et de la série entre la colonne A et H ou A et I


Merci à vous, je reste dispo pour tout autres indications, ou surtout si je n'ai pas été assez claire

Bonne journée



Configuration: Windows 10 (x64)
Asus z97-A - I5 4670K
8Go 1600 Mhz Kingston Genesis HyperX
R9 290X Tri-X OC
A voir également:

1 réponse

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
1 mars 2019 à 15:30
Bonjour,

Je propose :
Sub AjoutDonnees()
    If ActiveCell.Column = 2 And (ActiveCell.Address = Selection.Address) Then
        Ligne = ActiveCell.Row + 1
        Range("A" & Ligne & ":H" & Ligne).Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    End If
End Sub


A+
0
Brasiligun Messages postés 122 Date d'inscription mardi 29 décembre 2009 Statut Membre Dernière intervention 4 mars 2019 1
2 mars 2019 à 12:10
Bonjour merci de ta réponse!

C'est exactement ça, sauf que ce n'était pas la que je bloquais. Le gros point de difficulté que je n'arrive pas à passer, c'est que je souhaiterai qu'en cliquant directement sur ce bouton, une MsgBox ou quelque chose comme ça nous impose de faire deux choix en menus déroulants:

"- Pour quelle section?" -> menu déroulant

puis en fonction de la section choisie

"- Pour quelle série?" -> menu déroulant

Et c'est à ce niveau que je tape complètement à côté. Mais sinon, ce que tu m'as proposé c'est exactement ça, j'ai su arriver au même niveau :p

Merci à toi en tout cas!
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
4 mars 2019 à 14:43
Bonjour,

Sans menu déroulant, la commande InputBox te permet de demander une saisie utilisateur.
Mais si tu veux une liste déroulante, il faut passer par un UserForm.

Ta Base de Données est étrange ; pour chaque série de matériel (roulant...), la nature de l'activité de maintenance est associée à une condition de réalisation et à un ou plusieurs ateliers indépendamment de la section.

A+
0
Brasiligun Messages postés 122 Date d'inscription mardi 29 décembre 2009 Statut Membre Dernière intervention 4 mars 2019 1
Modifié le 4 mars 2019 à 14:57
Bonjour,

Je te rejoins, ma base de données est étrange, ce sont seulement de simples exemple totalement pourris et bidons :p

Le but de la manœuvre, (ou je bloque), je souhaiterai que la macro me demande "pour quelle section", puis "pour quelle série", pour ensuite ajouter une ligne définie (comme le faisait le bout de code que tu m'as proposé) en dessous de la dernière ligne répondant au même critère que les choix indiqué

Par exemple je souhaite une nouvelle ligne pour SECTION 1 et série ROSE

SECTION1: ROSE - Ampoule - FOSSE - Atelier1/Atelier3

SECTION1: ROSE - CTRL sous bassement - Fosse - Ateliers 1/2/3
  • ajout de la nouvelle ligne* -> SECTION1 : ROSE - *A remplir* - *A remplir* - *A remplir*



J'ai bidouillé dans mon coin comme je n'arrive pas à arriver à ce que je veux, voilà le fichier "palliatif"

https://1drv.ms/x/s!Aqfw8DZtbz2zrT6v1ofql7mXOPDE

Si tu double clic sur un élément de "Série", il créer la ligne vide en dessous, mais sans aucun remplissage.

Je ne sais même pas si c'est réalisable au final, mais merci de ton aide
0