Une partie de colonne B le mettre en colonne C

  • Initiateur de la discussion Initiateur de la discussion Sylvie64
  • 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 !

Sylvie64

XLDnaute Occasionnel
Bonjour,

J'aimerai mettre ce qui se trouve en rouge de la colonne B en colonne C sur la même ligne que la date qui se trouve en colonne A

Est ce possible ?

Merci pour votre aide
 
Re : Une partie de colonne B le mettre en colonne C

Bonjour Sylvie64,

Voyez le fichier et cette macro :

Code:
Private Sub CommandButton1_Click()
Dim derlig As Long, i As Long, plage As Range
derlig = Range("B65536").End(xlUp).Row
Application.ScreenUpdating = False
'---Fusion des textes en colonne B---
For i = derlig To 2 Step -1
  If Cells(i, 1) = "" Then
    Cells(i - 1, 2) = Application.Trim(Cells(i - 1, 2) & " " & Cells(i, 2))
    Cells(i, 2) = ""
  End If
Next
'---suppression des lignes vides (facultatif)---
'Set plage = Range("A1:A" & derlig).SpecialCells(xlBlanks)
'If Not plage Is Nothing Then Intersect(plage.EntireRow, Range("A:B")).Delete xlUp
End Sub

J'ai préféré fusionner tous les textes en colonne B, mais à vous d'adapter si vous voulez autre chose.

J'ai mis en commentaires la suppression des lignes vides, au cas où ça vous intéresserait.

Pour la colonne B, l'option "Renvoyer à la ligne automatiquement" a été cochée.

A+
 

Pièces jointes

Re : Une partie de colonne B le mettre en colonne C

Bonjour job75,

Excellent c'est vraiment se que je voulais mais vous pouvez m'expliquer la macro !
il n'y a pas longtemps que je pratique Excel et cela me passionne fortement par contre la macro je connais pas du tout.

Merci bien de votre aide
 
Re : Une partie de colonne B le mettre en colonne C

Re,

Quelques commentaires supplémentaires :

Code:
Private Sub CommandButton1_Click()
Dim derlig As Long, i As Long, plage As Range 'déclaration des variables
derlig = Range("B65536").End(xlUp).Row 'n° de la dernière ligne remplie en colonne B
Application.ScreenUpdating = False 'fige l'écran
'---Fusion des textes en colonne B---
For i = derlig To 2 Step -1 'balayage de la colonne A en commençant par la dernière ligne et en remontant
  If Cells(i, 1) = "" Then 'si la cellule étudiée en colonne A est vide
    Cells(i - 1, 2) = Application.Trim(Cells(i - 1, 2) & " " & Cells(i, 2)) 'concatène les textes et renseigne la cellule précédente en colonne B
    Cells(i, 2) = "" 'efface la cellule en colonne B
  End If
Next
'---suppression des lignes vides (facultatif)---
'Set plage = Range("A1:A" & derlig).SpecialCells(xlBlanks) 'détermine les cellules vides en colonne A
'If Not plage Is Nothing Then Intersect(plage.EntireRow, Range("A:B")).Delete xlUp 'supprime les cellules vides en colonnes A et B
End Sub

Edit : Application.Trim c'est la même chose que la fonction SUPPRESPACE dans une feuille de calcul.

A+
 
Dernière édition:
Re : Une partie de colonne B le mettre en colonne C

Merci job75, mais je ne sais pas utiliser la macro, comment tu intègres la touche 'fusionner" !! je ne vois comment mettre la formule!! je cherche depuis ce matin, mais là je n'y arrive pas.
Désolé j'ai cherché sur le net l'explication d'une macro mais je n'y suis pas arrivé.
Merci encore
Sylvie
 
- 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
  • Question Question
Réponses
3
Affichages
105
regis6460
R
Réponses
3
Affichages
166
Réponses
18
Affichages
722
Retour