Comment réaliser une fusion personnalisée dans Excel?

0

Je sais juste base pour exceller. J'ai une énorme feuille Excel du client. J'essaie d'expliquer avec des exemples de données ce que je veux. Voici les données d'entrée dans une feuille

enter image description here

Ce que je veux c'est- J'entre les numéros de ligne dans la nouvelle feuille (ou dans un fichier texte ou Excel), comme les numéros de ligne dans n'importe quel format, par exemple Row2:Row3:Row4 puis il fusionne ces trois lignes comme ci-dessous

  1. Conservez le contenu de A2 tel quel.
  2. Fusionner le contenu de B1, B2, B3 sous B2
  3. Déplacez le contenu de A3 et A4 dans la colonne C1. Cette étape est trop bonne pour avoir si possible mais pas obligatoire

Capture d'écran de sortie

enter image description here

Je ne suis pas sûr de savoir comment y parvenir? Est-ce réalisable par macro ou formule ou autre chose?

user3198603
la source

Réponses:

0

Je pense que c'est une bonne occasion de vous donner la canne à pêche et de vous apprendre deux méthodes de base en VBA.

Combinaison de deux cellules en une

Si j'ai deux cellules avec des données:

enter image description here

Vous pouvez toujours référencer le contenu d'une cellule par ce format:

ThisWorkbook.Sheets(worksheet_name).Range(desirded_range).Value 

où vous pouvez entrer le nom et la plage de la feuille de calcul. Cette méthode peut être utilisée pour lire de une cellule, ainsi que l'écriture à une cellule. Donc, dans mon exemple ci-dessus, j'utiliserais:

Public Sub combine()
    ThisWorkbook.Sheets("Sheet1").Range("A1").Value = ThisWorkbook.Sheets("Sheet1").Range("A1").Value & ThisWorkbook.Sheets("Sheet1").Range("A2").Value
End Sub

Remarquez comment je peux référencer la plage A1 en la lisant et en lui affectant des données.

Fusionner

En utilisant le même exemple pour mes données:

enter image description here

Pour fusionner, nous utilisons ce format:

ThisWorkbook.Sheets(worksheet_name).Range(desired_range).Merge

Ceci est très similaire à l'exemple de combinaison. Garde en tête que gamme désirée peut être une plage et ne doit pas nécessairement être une seule cellule, donc pour fusionner dans mon exemple, je voudrais simplement utiliser:

Public Sub Merge()
    ThisWorkbook.Sheets("Sheet1").Range("A1:A2").Merge
End Sub
Eric F
la source