Excel VBA 实现点击单元格自动选择奇数列

在 Excel 中,您是否需要频繁选择特定间隔的单元格?本文将为您介绍如何使用 VBA 代码,实现点击一个单元格后,自动选择该单元格所在行的第1、3、5、7、9、11个单元格。

VBA 代码:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    '检查是否选择了一个单元格
    If Target.Cells.Count = 1 Then
        '获取选中单元格的行和列号
        Dim rowNum As Long
        Dim colNum As Long
        rowNum = Target.Row
        colNum = Target.Column
        
        '计算需要选取的单元格的列号
        Dim selectedCols() As Variant
        selectedCols = Array(1, 3, 5, 7, 9, 11)
        
        '选取指定的单元格
        Dim i As Integer
        For i = LBound(selectedCols) To UBound(selectedCols)
            Cells(rowNum, colNum + selectedCols(i) - 1).Select
        Next i
    End If
End Sub

使用方法:

  1. 打开您的 Excel 文件,并按下 Alt + F11 打开 VBA 编辑器。
  2. 在左侧的项目资源管理器中,双击您想要应用此功能的工作表(例如 'Sheet1')。
  3. 将上述 VBA 代码粘贴到右侧的代码窗口中。
  4. 关闭 VBA 编辑器,并保存您的 Excel 文件。

现在,当您在工作表中选择一个单元格时,代码将自动选取以该单元格为首的第1、3、5、7、9、11个单元格。

代码解释:

  • Worksheet_SelectionChange 事件:每当您在工作表中更改选择时,都会触发此事件。
  • Target 对象:表示您当前选择的单元格区域。
  • Target.Cells.Count = 1:检查是否只选择了一个单元格。
  • rowNumcolNum 变量:存储选定单元格的行号和列号。
  • selectedCols 数组:存储需要选择的列号的偏移量。
  • For...Next 循环:遍历 selectedCols 数组,并使用 Cells 对象选择相应的单元格。

希望这篇文章能够帮助您在 Excel 中更轻松地选择指定单元格!

Excel VBA 自动选取指定单元格 - 奇数列选择

原文地址: https://www.cveoy.top/t/topic/pXD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录