No.1

单元格居中、靠左、靠右,相信大多数人都知道怎么操作。

Excel菜单栏里有快捷功能键,那么如何用vba代码来实现呢?

下面具体介绍一下:

No.2

首先要明白,这些属性是如何使用的。

水平对齐属性:HorizontalAlignment

垂直对齐属性:VerticalAlignment

分别指单元格内水平方向和垂直方向的对方方式。

是属于Range对象下的属性。

使用方法:

Ra.HorizontalAlignment=xlHAlignCenter'水平距中对齐

Ra.VerticalAlignment=xlVAlignBottom'垂直底部对齐

Ra代表一个Range对象变量。

如何使用更熟练,一 定要记住下面的枚举。

枚举值和名称都可以作为属性值使用。

HorizontalAlignment

VerticalAlignment

No.3

示例代码

Private Sub CommandButton1_Click() Dim H As String, V As String, Hx As Long, Vx As Long H = Me.ComboBox1.Value V = Me.ComboBox2.Value Dim R As Range, Rx As Range Set Rx = Range(Me.ComboBox1.ListFillRange) For Each R In Rx If R.Value = H Then Hx = R.Offset(0, -1).Value Exit For End If Next R If VBA.Len(Hx) = 0 Then Exit Sub Set Rx = Range(Me.ComboBox2.ListFillRange) For Each R In Rx If R.Value = V Then Vx = R.Offset(0, -1).Value Exit For End If Next R If VBA.Len(Vx) = 0 Then Exit Sub setRangeHV Hx, Vx'执行对齐方式 End Sub

本例中默认使用了两个ComboBox控件,并设置了ListFillRange属性。

引用ListFillRange属性赋值给Range对象变量Rx。

这个是很有特点的一个方法,有兴趣可以多做一些尝试。

如下代码:

Set Rx = Range(Me.ComboBox1.ListFillRange)

设置对齐过程

Private Sub setRangeHV(Hx As Long, Vx As Long) Dim sR As Range Set sR = Range("E3:J13") With sR .HorizontalAlignment = Hx .VerticalAlignment = Vx End With End Sub

可以在按钮代码中看到最后有一行:

setRangeHV Hx, Vx'执行对齐方式

这是最关键的一行,也就是调用执行设置对齐的过程。

过程中定义了要设置的单元格范围E3:J13,可以设置自己需要的单元格,修改这个地址。

过程传递了两个变量,Hx、Vx

一个水平,一个垂直分别对应的对齐方式的值。

仔细看下来,其实也十分简单。

重点在于实际应用中去尝试。

欢迎关注、收藏

---END---