Selection cellules non vide d'une plage pour concaténation

Garion

XLDnaute Nouveau
Bonjour, je suis débutant et j'aurai besoin d'un peu d'aide.

J'ai sur une plage de cellule A60:F70 des données que je souhaite concaténer dans une autre cellules : U5.

Le problème est que dans la plage initial, il n'y a pas toujours de données dans toutes les cellules et donc lors de la concaténation il y a plein de saut de page.
Je souhaiterai que les cellules sélectionner soit uniquement les cellules non vide pour que lors de la concaténation il n'y ait pas de saut de page inutile.

Avez une idée pour faire marcher ce code ?

Voila la partie de mon code ou je bloque :

Sheets("feuille3")Range("A60:F70").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
'suppression cellule vide vers le haut ce qui simplifie la sélection des cellules non vide

Dim t
Dim dl%
dl = Sheets("feuille3").Range("A100").End(xlUp).row 'selection de la dernière cellule non vide : cette partie du code ne fonctionne pas.
t = Application.Transpose(Sheets("feuille3").Range("a60" & dl).Value) 'actions 'concaténation des cellules non vide
Sheets("feuille3").Range("u5") = Join(t, vbLf) 'cellule cible


Merci d'avance pour votre aide.
 

ROGER2327

XLDnaute Barbatruc
Re : Selection cellules non vide d'une plage pour concaténation

Bonjour Garion
Sans support, pas facile de répondre précisément. Un truc m’intrigue, c'est cette histoire de saut de page dans les cellules…​
ROGER2327
#5204


Jeudi 12 Clinamen 138 (Saint Georges Dazet, poulpe au regard de soie, SQ)
14 Germinal An CCXIX
2011-W13-7T15:58:21Z
 

Garion

XLDnaute Nouveau
Re: Re : Selection cellules non vide d'une plage pour concaténation

Bonjour ROGER 2327,

Désolé pour le vocabulaire employé. Pour moi le saut de page correspond à un alt+entrée dans une cellule.

J'espère que j'ai mieux expliqué ma demande.

Comme demandé, j'ai rajouter un document pour comprendre ma demande.
 

Pièces jointes

  • esssai concaténation.xls
    40 KB · Affichages: 77

ROGER2327

XLDnaute Barbatruc
Re : Selection cellules non vide d'une plage pour concaténation

Re...
Essayez ceci :
VB:
Sub code()
  With Sheets("Feuil1")
    .Range("B3") = concat(.Range(.Range("A10"), .Range("A100").End(xlUp)))
  End With
End Sub

Function concat$(r)
Dim Cel As Range
  For Each Cel In r.Cells
    If Not IsEmpty(Cel) And Cel.Value <> "" Then concat = concat & CStr(Cel.Value) & vbLf
  Next
  If Len(concat) Then concat = Left$(concat, Len(concat) - 1)
End Function
ROGER2327
#5205


Jeudi 12 Clinamen 138 (Saint Georges Dazet, poulpe au regard de soie, SQ)
14 Germinal An CCXIX
2011-W13-7T16:55:02Z
 

Discussions similaires

Statistiques des forums

Discussions
312 506
Messages
2 089 121
Membres
104 038
dernier inscrit
Helpme59