A B C D E F G
1 位置5 0 0 0 0
2 A 1 2 3 0
3 B 4 5 6 0
4 C 7 8 9 0
如上表,我想当B列的单元格里出现“位置”的字符后,删除这个单元格后面5个单元格和下面一个单元格,这种情况如何实现?
我的数据是vb6.0写入的,我想在里面添加这个功能,vba都会报错
用VB控制excel删除特定的单元格
答案:3 悬赏:0 手机版
解决时间 2021-03-17 08:51
- 提问者网友:書生途
- 2021-03-17 05:16
最佳答案
- 五星知识达人网友:愁杀梦里人
- 2021-03-17 06:30
Sub 清除()
For Each rng In Range("a1:z10")
If rng = "位置" Then
Range(Cells(rng.Row, rng.Column + 1), Cells(rng.Row, rng.Column + 5)) = ""
rng.Offset(1, 0) = ""
End If
Next
End Sub
For Each rng In Range("a1:z10")
If rng = "位置" Then
Range(Cells(rng.Row, rng.Column + 1), Cells(rng.Row, rng.Column + 5)) = ""
rng.Offset(1, 0) = ""
End If
Next
End Sub
全部回答
- 1楼网友:神的生死簿
- 2021-03-17 07:33
你需要的是从a5开始往下寻找,找到ax=a2的时候,把bx修改为b2,是吗,代码如下:
i=5
while sheet1.cells(i,1)<>"" and sheet1.cells(i,1)<>me.用户名.text
i=i+1
wend
if sheet1.cells(i,1)=me.用户名.text then sheet1.cells(i,2)=me.密码.text
- 2楼网友:渊鱼
- 2021-03-17 06:43
Private Sub Worksheet_Change(ByVal Target As Range)
If Len(Target) <> Len(Replace(Target, "位置", "")) Then
For i = 1 To 5
Cells(Target.Row, Target.Column + i).ClearContents
Next
Cells(Target.Row + 1, Target.Column).ClearContents
End If
End Sub
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯