Solved

Excel VBA Merge Cells

Posted on 2013-01-05
4
1,672 Views
Last Modified: 2013-01-05
Hi

What Excel VBA would I use to do each of the ollowing Excel merges

Merge & Center
Merge Across
Merge Cells
0
Comment
Question by:murbro
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
4 Comments
 
LVL 50

Expert Comment

by:Ingeborg Hawighorst
ID: 38747489
Hello,

to find out about commands like these, fire up the macro recorder and use the commands one after the other. Then stop the macro recorder and see the code:

Option Explicit

Sub Macro1()
'
' Macro1 Macro
'

'
    Range("A1:C1").Select
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.Merge
    Range("A2:C2").Select
    Selection.Merge True
    Range("A3:C3").Select
    Selection.Merge
    Range("A1:C3").Select
    Selection.UnMerge
End Sub

Open in new window


The macro recorder always uses the Select statement, which you can trim from your final code, like

Sub Macro1()

'Merge and Center
    With Range("A1:C1")
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Range("A1:C1").Merge
    
' Merge across
    Range("A2:C2").Merge True

' Merge
    Range("A3:C3").Merge

' Unmerge
    Range("A1:C3").UnMerge
End Sub

Open in new window


cheers, teylyn
0
 

Author Comment

by:murbro
ID: 38747502
Hi. Thanks

I had done that and post the question because step 1 and 3 seem to be exactly the same,
0
 
LVL 50

Accepted Solution

by:
Ingeborg Hawighorst earned 500 total points
ID: 38747508
No, they're not the same. The actual merge command is the same, but for the Merge and Center there are a few commands that format the cells and precede the merge command. Hence the merged cell content is centered. For the Merge command alone, the contents will be formatted in the same way as the source cell.

If A1 is right-aligned and you use the Merge only option to merge A1 to C1, then the result will be a right-aligned merged cell. The merge command alone will honor existing cell formatting.

Whereas if A1 is right-aligned and you use the Merge and Center, the result will be a centered merged cell.

cheers, teylyn
0
 

Author Closing Comment

by:murbro
ID: 38748120
I see. I had assumed that that first bit would have happened for all the merge types but woke up this morning realising that it might not, so thanks very much for the clarification...
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A little background as to how I came to I design this code: Around 5 years ago I designed an add-in that formatted Excel files to a corporate standard, applying different cell colours and font type depending on whether the cells contained inputs,…
Some code to ensure data integrity when using macros within Excel. Also included code that helps secure your data within an Excel workbook.
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.
This Micro Tutorial will demonstrate how to use a scrolling table in Microsoft Excel using the INDEX function.

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question