"empiler" les colonnes

  • Initiateur de la discussion noux
  • Date de début
N

noux

Guest
bonjour,
mon problème peut peut être avoir une solution évidente (sans faire de grosse macro) mais là je ne la vois pas...

pour simplifier, j'ai 3 colonnes:

A1|B1|C1
A2|B2|C2
---|---|---
---|---|---
---|---|---
---|By|---
---| |---
Ax| |---
|Cz

et je voudrais obtenir:

A1
A2
---
---
Ax
B1
---
---
By
C1
---
---
Cz

le tout donc dans la même colonne...
merci de m'éclairer
 
M

myDearFriend

Guest
Bonsoir Noux,

Tu peux utiliser la macro suivante :

Sub EmpilerColonnes()
Dim L As Long
Dim C As Integer
With ActiveSheet
'Pour chaque colonne
For C = 2 To 256
'Interrompre à la dernière colonne utilisée
If .Cells(65536, C).End(xlUp).Row = 1 And .Cells(1, C) = "" Then Exit For
'Couper-Coller les données en A
L = .Range("A65536").End(xlUp).Row
.Range(.Cells(L + 1, 1), .Cells(65536, 1)).Value = .Range(.Cells(1, C), .Cells(65536, C)).Value
.Range(.Cells(1, C), .Cells(65536, C)).ClearContents
Next C
End With
End Sub


Cordialement.
Didier_mDF
 
N

noux

Guest
vraiment désolé de pas avoir pu vous remercier plus tot que çà mais u formatage m'est tombé sur la gueule...


j'ai donc repris dans les grandes lignes la macro de my dear friend, et çà marche nickel pour ce que je voulais faire...

maintenant il se pose un nouveau problème...
je voudrais faire strictement l'inverse, décomposer une unique colonne en de multiples...
la tâche peut être facilitée en ceci que je ne veux que des "portions" de colonne originelle de même taille (10 lignes chacune)

en gros en partant de
A1
*
*
A100

je voudrais avoir
B1......................K1
*.........................*
B10....................K10

merci dem'aider à résoudre mon petit problème
 
M

Monique

Guest
Bonjour,

Par formules.
Tes valeurs de A1 à A100
Ton report de B1 à K10
En B1 :
=DECALER($A$1;COLONNES($B1:B1)-1+(LIGNES(B$1:B1)-1)*10;)
et tu fais un copié collé sur toute la plage B1:K10
 
N

noux

Guest
extra!

en fait je voulais plus exactement çà
=DECALER($A$1;(COLONNES($B1:B1)-1)*10+LIGNES(B$1:B1)-1;)
mais la philosophie est la même...

merci bien et désolé d'avoir créé un autre topic inutilement...
j'aurais bien voulu présenter de plus plates excuses mais vu comme je me suis fait agresser, je m'abstiens...

lol


en tout cas, Monique, vous avez un ardent défenseur! ;-)
 
M

Monique

Guest
Bonjour,

Tu es tout excusé, même si tu t'abstiens de présenter des excuses.
Si tu es tout neuf sur le forum, tu fais ce que tu peux.
Et j'apprends même l'existence d'un défenseur !
 

Discussions similaires

Réponses
2
Affichages
218

Statistiques des forums

Discussions
312 613
Messages
2 090 231
Membres
104 454
dernier inscrit
alaindeloin.1976