Excel(VBA) copier valeurs dans une cellule
Résolu
plastickman
Messages postés
64
Date d'inscription
Statut
Membre
Dernière intervention
-
plastickman Messages postés 64 Date d'inscription Statut Membre Dernière intervention -
plastickman Messages postés 64 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai dans la colonne A nommée "rubrique" et dans une colonne B des "option" s'y rapportant, ce qui donne :
Je souhaiterais réaliser un code qui me permettrait d'arriver à ceci:
Quelqu'un a -t-il une petite idée à me soumettre?
Merci,
J'ai dans la colonne A nommée "rubrique" et dans une colonne B des "option" s'y rapportant, ce qui donne :
A B 1 RUBRIQUES OPTIONS 2 Machine 1 option 1 3 option 23 4 option 12 5 Machine 2 option 2 6 option 4 7 Machine 3 option 1 8 option 112 9 option 8
Je souhaiterais réaliser un code qui me permettrait d'arriver à ceci:
A B 1 RUBRIQUES OPTIONS 2 Machine 1 option 1 option 23 option 12 3 4 5 Machine 2 option 2 option 4 6 7 Machine 3 option 1 option 112 option 8 8 9
Quelqu'un a -t-il une petite idée à me soumettre?
Merci,
A voir également:
- Excel(VBA) copier valeurs dans une cellule
- Aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Excel compter cellule couleur sans vba - Guide
- Proteger cellule excel - Guide
4 réponses
L'utilisation de la fonction de concaténation d'excel ne suffirait pas à résoudre le problème par hasard ?
Par exmeple: =CONCATENER(E13;F13)
Par exmeple: =CONCATENER(E13;F13)
bonjour
quelque chose comme ça ?
bonne suite
quelque chose comme ça ?
Option Explicit Const FO = "Feuil1" Const FB = "Feuil2" Public Sub GrouperOptions() Dim derliFO As Long, liFO As Long Dim liFB As Long Dim rub As String, opt As String derliFO = Sheets(FO).Cells(Rows.Count, 2).End(xlUp).Row liFB = 2 liFO = 2 While liFO < derliFO rub = Sheets(FO).Cells(liFO, 1).Value opt = Sheets(FO).Cells(liFO, 2).Value Sheets(FB).Cells(liFB, 1).Value = rub Sheets(FB).Cells(liFB, 2).Value = opt liFO = liFO + 1 While (liFO <= derliFO) And (Sheets(FO).Cells(liFO, 1).Value = "") opt = opt & " " & Sheets(FO).Cells(liFO, 2).Value Sheets(FB).Cells(liFB, 2).Value = opt liFO = liFO + 1 Wend liFB = liFB + 1 Wend End Sub
bonne suite
Bonjour plastickman et ccm81
J'arrive un peu tard,
j'ai testé une macro qui fait le tri sur place (dans la même feuille) :
A+
--
Cordialement,
J'arrive un peu tard,
j'ai testé une macro qui fait le tri sur place (dans la même feuille) :
Sub RANGER() DerLig = Columns(2).Find("*", , , , xlByColumns, xlPrevious).Row LigMach = 2 Do LigOpt = LigMach + 1 Do If LigOpt > DerLig Then Exit Sub Cells(LigMach, 2) = Cells(LigMach, 2) & "," & Cells(LigOpt, 2) Rows(LigOpt).Delete Shift:=xlUp DerLig = DerLig - 1 Loop Until Cells(LigOpt, 1) <> "" LigMach = LigMach + 1 Loop End Sub
A+
--
Cordialement,
Bonsoir et merci à vous trois,
Remousse, j'ai bien pensé à CONCATENER, mais j'ai environ 500 lignes à traiter.
CCM81, ça marche très bien, malgré que je n'ai presque rien compris à ta macro ;)
Pilas31, ça marche également, sauf dans le cas où une "rubrique " n'a qu'une seule "option" en face dans la colonne B, à ce moment là, la ligne disparait.
Merci encore,
jp
Remousse, j'ai bien pensé à CONCATENER, mais j'ai environ 500 lignes à traiter.
CCM81, ça marche très bien, malgré que je n'ai presque rien compris à ta macro ;)
Pilas31, ça marche également, sauf dans le cas où une "rubrique " n'a qu'une seule "option" en face dans la colonne B, à ce moment là, la ligne disparait.
Merci encore,
jp