Excel使用VBA程序自动换行

2025-09-21 02:39:38

1、打开Excel表格后,在工作表标签(Sheet1)上面单击右键,选择“查看代码”。

Excel使用VBA程序自动换行

2、在VBA编辑器的“Sheet1”代码窗口里边输入以下程序代码:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim sro, sco, ro, co

On Error Resume Next                '忽略运行时可能出现的错误

Application.EnableEvents = False    '开启代码只执行一次

Set mysheet1 = ThisWorkbook.Worksheets("Sheet1")

sro = Selection.Row      '选择单元格所在的行

sco = Selection.Column   '选择单元格所在的列

If sro > 1 And sco > 1 And sco <= 10 Then  '如果所选的单元格为第二行起,B~J列之间,则

 ro = Target.Row       '获取改变单元格所在的行

 co = Target.Column    '获取改变单元格所在的列

 If co = 10 Then                    '如果已经到达J列,则

  mysheet1.Cells(ro + 1, 2).Select  '换行,选择下一个单元格

 End If

 If co > 1 And co < 10 Then         '如果只在B-I列,则

  mysheet1.Cells(ro, co + 1).Select '选择右边单元格

 End If

End If

Application.EnableEvents = True    '恢复代码只执行一次

End Sub

Excel使用VBA程序自动换行

3、程序代码、思路解读:

(1)“Private Sub Worksheet_Change(ByVal Target As Range)”是在单元格内容改变时才会自动里边的程序,“Target”是对单元格进行追踪;

(2)先判断所选的单元格是否在要处理的范围内,再决定是否要执行自动换行,这样既可以提高运行速度,又不影响超出该范围的单元格的正常操作。

4、在指定区域的单元格里边输入内容时,单元格会根据所需换行。(只有改变单元格内容,按回车键才会向右选择单元格,否则将会向下选择)

Excel使用VBA程序自动换行

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢