Note: The other languages of the website are Google-translated. Back to English

Comment concaténer les valeurs de cellule jusqu'à ce que si trouve une cellule vide dans une colonne?

doc concaténer jusqu'à vide 1

Par exemple, j'ai une liste de valeurs qui inclut des cellules vides, et maintenant, je veux concaténer chaque ensemble de données entre les blancs dans une cellule et lister les valeurs combinées dans une autre colonne comme illustré ci-dessous. Comment pourrais-je concaténer des cellules jusqu'à trouver une cellule vide dans une colonne?

Concaténer les valeurs de cellule jusqu'à ce que if trouve une cellule vide dans une colonne avec le code VBA

Concaténer les valeurs de cellule jusqu'à ce que if trouve une cellule vide dans une colonne avec Kutools for Excel


flèche bleue bulle droite Concaténer les valeurs de cellule jusqu'à ce que if trouve une cellule vide dans une colonne avec le code VBA

Il n'existe aucun moyen direct pour vous de concaténer un ensemble de cellules entre des espaces, mais vous pouvez appliquer le code VBA suivant pour le gérer. Veuillez procéder comme suit:

1. Maintenez le ALT + F11 clés pour ouvrir le Fenêtre Microsoft Visual Basic pour Applications.

2. Cliquez insérer > Moduleet collez le code suivant dans le Fenêtre du module.

Code VBA: concaténer les valeurs de cellule jusqu'à ce que si trouve une cellule vide

Sub Concatenatecells()
'updateby Extendoffice
    Dim xRg As Range
    Dim xSaveToRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xTStr As String
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please selecte the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Columns.Count > 1 Then
        MsgBox "the selected range is more than one column", vbInformation, "Kutools for Ecel"
        Exit Sub
    End If
    Set xSaveToRg = Application.InputBox("Please selecte output cell:", "Kutools for Excel", , , , , , 8)
    If xSaveToRg Is Nothing Then Exit Sub
    Set xSaveToRg = xSaveToRg.Cells(1)
    Application.ScreenUpdating = False
    For Each xCell In xRg
        If xCell <> "" Then
            xTStr = xTStr & xCell & " "
        Else
            xSaveToRg.Value = xTStr
            Set xSaveToRg = xSaveToRg.Offset(1)
            xTStr = ""
        End If
    Next
    If xTStr <> "" Then xSaveToRg.Value = Left(xTStr, Len(xTStr) - 1)
    Application.ScreenUpdating = True
End Sub

3. Puis appuyez F5 clé pour exécuter ce code, et une boîte de dialogue s'affiche pour vous rappeler de sélectionner la plage de données que vous souhaitez concaténer, voir capture d'écran:

doc concaténer jusqu'à vide 10

4. Puis clique OK, et une autre boîte de dialogue apparaît, veuillez sélectionner une cellule pour afficher le résultat concaténé, voir capture d'écran:

doc concaténer jusqu'à vide 11

5. Et puis cliquez OK bouton, et les données de la liste des colonnes sont concaténées entre les blancs, voir capture d'écran:

doc concaténer jusqu'à vide 1


flèche bleue bulle droite Concaténer les valeurs de cellule jusqu'à ce que if trouve une cellule vide dans une colonne avec Kutools for Excel

Si vous avez Kutools pour Excel, combinant ses Transformer la gamme et de la Combiner fonctionnalités, vous pouvez également terminer ce travail dès que possible. le Transformer la gamme L'utilitaire peut vous aider à convertir la colonne unique en plage, et le Combiner La fonction peut vous aider à concaténer la plage transformée en une colonne.

Kutools pour Excel : avec plus de 300 compléments Excel pratiques, essai gratuit sans limitation en 30 jours. 

Après l'installation de Kutools pour Excel, procédez comme suit:

1. Sélectionnez les cellules que vous souhaitez concaténer, puis cliquez sur Kutools > Autonomie > Transformer la gamme, voir capture d'écran:

2. Dans le Transformer la gamme boîte de dialogue, cochez Une seule colonne à la plage option sous la Type de transformation, Puis sélectionnez Une cellule vide délimite les enregistrements sous le Lignes par enregistrement, voir capture d'écran:

doc concaténer jusqu'à vide 3

3. Puis clique Ok, et une boîte de dialogue apparaîtra pour vous rappeler de sélectionner une cellule pour afficher le résultat, voir capture d'écran:

doc concaténer jusqu'à vide 4

4. Cliquez OK, et les données d'une seule colonne ont été converties en plusieurs lignes et colonnes par la cellule vide, voir capture d'écran:

doc concaténer jusqu'à vide 5

5. Les données converties sont dans plusieurs colonnes, vous devez donc les combiner en une seule colonne, veuillez sélectionner la plage de données et cliquez sur Kutools > Fusionner et fractionner > Combinez des lignes, des colonnes ou des cellules sans perdre de données, voir capture d'écran:

6. Dans le Combiner des colonnes ou des lignes boîte de dialogue, effectuez les opérations suivantes:

(1.) Sélectionnez Combiner des colonnes Option de Pour combiner les cellules sélectionnées selon les options suivantes;

(2.) Spécifiez ensuite un séparateur que vous souhaitez séparer les valeurs concaténées;

(3.) Sélectionnez la manière dont vous souhaitez traiter les cellules combinées. Vous pouvez conserver ou supprimer les données d'origine et vous pouvez également fusionner les cellules combinées. Voir la capture d'écran:

doc concaténer jusqu'à vide 7

7. Après avoir terminé les réglages, cliquez sur Ok or Appliquer bouton, les cellules ont été concaténées dans une colonne avec un séparateur spécifique, voir capture d'écran:

doc concaténer jusqu'à vide 8

Téléchargez et essayez gratuitement Kutools for Excel Now!


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Commentaires (5)
Pas encore de notes. Soyez le premier à évaluer!
Ce commentaire a été minimisé par le modérateur sur le site
Comment feriez-vous si vous voulez vous baser sur une autre colonne ? J'ai des données similaires, mais la colonne B est un nombre puis des notes (comme votre fruit) dans la colonne I, je veux combiner toutes les notes de la colonne I jusqu'à ce qu'il y ait une autre cellule dans la colonne B qui n'a qu'un nombre. Parfois, il y a une lettre sous B ou les cellules sont vides, c'est pourquoi il faut combiner jusqu'à un nombre. Ensuite, peut-il enfin revenir à l'endroit où il a commencé la moissonneuse-batteuse? IE toutes les notes pour le premier numéro sont dans la colonne j, mais si le numéro suivant est 5 lignes en dessous, c'est bien, il va juste dans la colonne j mais le même numéro de ligne que le numéro est trouvé ?
Ce commentaire a été minimisé par le modérateur sur le site
Cela montre qu'il y a une erreur de syntaxe à la ligne 3 "Dim xRg As Range" lorsque j'essaie d'exécuter ce module basé sur la méthode 1, que dois-je faire à ce sujet ?
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour, JJ, Le code fonctionne bien dans ma feuille de calcul, quelle version d'Excel utilisez-vous ? Ou vous pouvez insérer un écran de votre problème ici.
Ce commentaire a été minimisé par le modérateur sur le site
super boulot frère, très utile
Ce commentaire a été minimisé par le modérateur sur le site
Bonjour,
Je vous en prie. Heureux que cela aide. Des questions, n'hesitez pas a nous contacter. Passe une bonne journée.
Sincèrement,
Mandy
Il n'y a pas encore de commentaires postés ici
Laisser vos commentaires
Publier en tant qu'invité
×
Évaluez cet article:
0  Personnages
Emplacements suggérés