excel - 是否可以限制行选择?
问题描述
我正在尝试制作一个按钮以使用 vba 从 Excel 上的表格中删除一行,但是当我按下按钮并选择不止一行或许多单元格然后删除所有内容时,我想限制从 E 中的选择给我(不管行数)这是我的代码,非常感谢,希望你能帮助我,我还没有找到类似的东西。
子 delete_a_row() 变暗变量为范围 出错时转到 local_err CONFIRM = MsgBox("你想删除一行吗?", vbYesNo + vbExclamation, "删除行") 如果 (CONFIRM = vbYes) 那么 设置变量 = Application.InputBox("选择一行", "删除行", , , , , , 8) 范围(变量。地址)。选择 选择.删除 Shift:=xlUp 万一 本地错误: 结束子
我知道看起来有点乱,抱歉我是 VBA 新手
解决方案
有限的行选择
- 以下将删除from 列to的第
row
一个first range
(如果不连续)。selection
E
I
- 我的意思
first range
是,如果您选择一个以 row 开头的范围6
并按下 CTRL并选择另一个以 row 开头的范围2
,那么 row6
将被删除(请参阅Range.Areas)。
编码
Option Explicit
Sub delete_a_row()
Dim Confirm
On Error GoTo local_err
Confirm = MsgBox("do you wanna delete a row?", _
vbYesNo + vbExclamation, "delete row")
If (Confirm = vbYes) Then
Dim variable As Range
On Error Resume Next
Set variable = Application.InputBox("select a row", _
"delete row", , , , , , 8)
If Err.Number = 0 Then
On Error GoTo local_err
With variable
Range(Cells(.Row, "E"), Cells(.Row, "I")).Delete Shift:=xlUp
End With
Else
On Error GoTo local_err
MsgBox "User cancelled."
End If
Else
MsgBox "User selected No."
End If
local_err:
End Sub
推荐阅读
- java - 在 Observable.zip 之后 RxJava 返回 Observable
- java - 使用用户名和密码进行 SprinBoot 身份验证
- algorithm - Prim 算法和断开连接图
- ethereum - web3js 支持比特币吗
- android - 当 recyclerview 中没有要显示的数据时,如何显示空视图?
- sockets - 套接字 IO 向每个客户端广播,并带有它们的套接字 id
- django - Django Sessions:从服务器获取登录用户数据的正确方法?
- python - 如何遍历嵌套列表,将第一个元素与另一个列表进行比较,然后追加到新列表?
- r - 在 R 中计算相异矩阵
- clojure - 编译 ClojureScript 时出现“地址已在使用中”