2017-07-17 168 views
2

我有一本工作簿,其中需要将文本(从单元格)对齐到左侧和右侧。到目前为止我有这个,但我不知道如何继续。在Excel中将文本左右对齐?

Sub M() 

ActiveSheet.PageSetup.CenterHeader = ActiveSheet.Range("A1") & " " & 
ActiveSheet.Range("B1") 

End Sub 

我想一般知道如何覆盖在头部的每个部分文本对齐,但在这种情况下,我需要有左对齐同时在左,右头文字。

+0

我承担的贴码('ActiveSheet.PageSetup.CenterHeader = ActiveSheet.Range( “A1”)& “” &'和'ActiveSheet你的两条线。范围(“B1”)')实际上只是程序中的一行代码。如果不是,它将不会编译。 – YowE3K

+0

“将文本(从单元格)向左和向右对齐” - 您的意思是否合理?如果是,那在Excel中不是一个选项。 –

+0

@TimWilliams Excel将“分布式”作为**单元格**格式化选项之一。怀疑它是否可以在标题中使用。 – YowE3K

回答

2

我将您的问题解释为“我希望将一个单元格的值作为我的标题的左侧部分,并将另一个单元格的值作为我的标题的右侧部分”。

如果是这样,你可能想:

Sub M() 
    With ActiveSheet.PageSetup 
     .LeftHeader = ActiveSheet.Range("A1").Value 
     .CenterHeader = "" 
     .RightHeader = ActiveSheet.Range("B1").Value 
    End With 
End Sub 
+0

这就是我的意思,对不起!你说什么工作,但我不能改变标题的每个部分的水平对齐,任何方式来做到这一点? –

+0

@KevinLópez“LeftHeader”应该是左对齐的,“RightHeader”应该是右对齐的。你想要什么? (我能想到的唯一的事情可能是(a)你希望两个“部分”集中在页面的两半上,或者(b)你想要左侧头部右对齐,右侧头部向左 - (b)可能是“可行的”,但我怀疑是否选项(a)。) – YowE3K

+0

我想知道一般情况下如何覆盖对齐方式文本在标题的每个部分,但在这种情况下,我需要在右侧和左侧标题中将文本对齐到左侧。 –

0

可以使用Range("A1").HorizontalAlignment = xlLeft... = xlRight

当然,根据需要调整范围(多个)。

0

Range的Horizo​​ntalAlignment属性应该是你要找的。 xlLeft或xlRight是左对齐或右对齐的值。

Range.HorizontalAlignment = xlLeft 

Range.HorizontalAlignment = xlRight 

E.G.

Sub M() 

ActiveSheet.PageSetup.CenterHeader = ActiveSheet.Range("A1") & " " & 
ActiveSheet.Range("B1").HorizontalAlignment = xlRight 

End Sub 

会将B1单元向右对齐。

3

要在Excel中执行此操作,请选择对齐所需的单元格部分。然后,类型ALT + ħ + + 大号为左,ALT + ħ + + Ç为中心,和ALT + ħ + + R正确。

但是,根据你的问题,你似乎想在VBA而不是Excel中做到这一点。如果是这种情况,请改为:

Range(myRange).HorizontalAlignment = xlRight对于右侧,和 Range(myRange).HorizontalAlignment = xlLeft左侧,其中myRange是单元格的范围。