XL 2016 solidarisation de lignes en VBA

  • Initiateur de la discussion Initiateur de la discussion GOLE
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GOLE

XLDnaute Nouveau
Bonjour le forum,
Vous trouverez en PJ un fichier "test" où j'aimerai solidariser des lignes grâce au VBA
Mes connaissances en vba sont très limitées et se résument à adapter des codes à mes applications
Merci par avance
 

Pièces jointes

Bonjour Gole,
Tel que présenté, ça ne peut pas marcher car nul part vous n'avez le descriptif des Ref auquel on pourrait se raccrocher. Pr ex, nulle pert il est indiqué que 301 c'est 5 chaises. Donc quand on rentre des Ref la table se désynchronise.
Il manque cette table de descriptifs. Ensuite on pourra en fonction des Ref rentrées y attacher le descriptif adequat.
 
Bonjour Gole,
Tel que présenté, ça ne peut pas marcher car nul part vous n'avez le descriptif des Ref auquel on pourrait se raccrocher. Pr ex, nulle pert il est indiqué que 301 c'est 5 chaises. Donc quand on rentre des Ref la table se désynchronise.
Il manque cette table de descriptifs. Ensuite on pourra en fonction des Ref rentrées y attacher le descriptif adequat.
Bonjour Sylvanu,
Dans mon application la référence et la nature ne sont pas liés; le mot ref est mal choisi je dirai plutot que ce sont des points de relevé. (pas de formule avec rechercheV ou somme prod).
Je pense que c'est possible de lier (en vba) qté et nature sur ref
 
J'ai trouvé sur ce forum une réponse en VBA sur ce thème de Job75 en 2015
C'est exactement ce que je cherche pour le résultat sur la deuxième feuille
Malheureusement son code c'est de l'hébreu pour moi
si quelqu'un pouvait l'adapter à mon exemple avec un peu d'explication ce serait sympa
ci-joint son fichier
Merci
 

Pièces jointes

J'ai essayé ce code mais ça ne marche pas ? :
Private Sub Worksheet_Change(ByVal Target As Range)
With ThisWorkbook.Sheets("table")
.Columns("A").Insert
For i = 2 To .Range("B" & .Rows.Count).End(xlUp).Row
num = .Range("B" & i)
.Range("A" & i) = num
Do
i = i + 1
.Range("A" & i) = num
Loop Until .Range("B" & i).Borders(xlEdgeBottom).LineStyle = 1
Next
.Range("A2:C" & .Range("A2").End(xlDown).Row).Sort key1:=.Range("A1"), _
order1:=xlAscending

.Columns("A").Delete
End With
End Sub
 
Merci Thierry pour ce travail, enfin une solution
Un petit hic, sur la feuille table dans la colonne Ref je ne dois pas avoir de doublons...
et si je supprime une valeur dans colonne A de "saisie" elle ne doit plus apparaitre dans colonne A de table
dur dur 🙂
 
Bonjour @GOLE , le Fil, le Forum

Ah oui, je n'avais pas aussi compris que tu voulais aussi gérer l'effacement d'une cellule *...
Cette facon de faire est assez incohérente pour gérer une mini Database, j'ai beau faire mais cette structure aura toujours des failles à mon avis...

Bon malgrès ceci j'ai presque tout repris pour repartir sur une base "propre" et éviter de faire une 'verrue' sur la v00...

Je te laisse tester
C'est à nouveau commenté, c'est ce qui prend le plus de temps !
Bonne Ascension !
@+Thierry

* Une seule cellule à la fois s'il vous plait !
 

Pièces jointes

Bonjour le forum (et Thierry),
Je reviens vers vous, dans mon application j'ai des lignes avec de nombreuses formules ; comment conserver les formules dans toutes les lignes de "table" quand on rajoute des références dans "saisie"
Ci-joint le fichier test avec 3 colonnes comportant des formules
merci
 

Pièces jointes

Bonjour @GOLE le Forum

Non, là on s'est mal compris et tu n'a jamais parlé de ça, le "mariage" de Tableaux générés par VBA sur un ou des tableaux contenant des formules fait toujours très mauvais ménage.

Je regarderai, mais là je ne promets rien, ca sent le gaz sans même ouvrir ton fichier ! 😉

Bon courage
@+Thierry
 
Re Bonjour

C'est exactement ce que je redoutais, en plus avec QUE trois formules 'bidon' pour l'exemple, mais en lisant ceci, je présume que c'est bien plus compliqué :
j'ai des lignes avec de nombreuses formules

Non, surtout depuis aussi que tu voulais du "Delete" de Rows depuis VBA sur cette Table ca va être ingérable et aussi en prime de l'insertion de Rows ca va être encore plus ingérable.

A ce niveau, en général je conseille à l'utilisateur de revoir complètement le concept de ce qu'il veut faire et obtenir... Car là sinon dans un mois il y aura un millier de Posts pour avancer/reculer sans aboutissement.

Bon courage
@+Thierry
 
Bonjour Thierry,
Le projet est abouti ; ton code va bien mais il me reste ce problème de copie de formule
Dans ton code après insérer la ligne est ce qu'on pourrai dire de copier seulement les cellules qui ont une formule...
En tous cas désolé pour les à coups et encore merci pour le le temps passé
Bonne soirée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
72
Affichages
1 K
Réponses
6
Affichages
152
Réponses
32
Affichages
990
Retour