设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 5065|回复: 16
打印 上一主题 下一主题

如何用VBA清零

[复制链接]
跳转到指定楼层
1#
发表于 2008-2-18 14:59:48 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我的工作表要反复使用,又不想老用复制工作簿
里面有很多分散的单元格要填数字,
每用一次都要清除上一次填下的数字
请教高手,有没有方法用VBA实现查找未锁定的单元格,并将其清零??

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
17#
 楼主| 发表于 2008-2-26 13:49:49 | 只看该作者
谢了
16#
 楼主| 发表于 2008-2-26 13:48:43 | 只看该作者
啊呀,对呀用&、合并!!
瞧我的脑呆瓜子........ ~

点击这里给我发消息

15#
发表于 2008-2-26 13:35:27 | 只看该作者
要求四列都一样的为重复吗,最简单的办法,把四个单元格用&合并为一个,然后再随你用哪种方式剔除重复。
14#
 楼主| 发表于 2008-2-26 13:08:09 | 只看该作者
我在妖的空间里,看到有剔除重复的公式
正好,近期我也碰到了类似的烦事
可是我怎样也弄不好,还请赐教哦~~
我的问题是这样:
   A    B   C   D   E  
1 50   甲  乙  丙  丁     
2 30   乙  甲  甲  甲
3 20   甲  乙  丙  
4 10   甲  乙  丙  丁
5 30   甲  甲  乙  乙
6 30   甲  乙  丙  
...
我想得到的结果是:
   A    B   C   D   E  
1 60   甲  乙  丙  丁
2 30   乙  甲  甲  甲
3 50   甲  乙  丙  
4 30   甲  甲  乙  乙
5
6  
...
B、C、D、E列是汉字,A列是数据



[ 本帖最后由 w5xzm 于 2008-2-26 13:10 编辑 ]

点击这里给我发消息

13#
发表于 2008-2-26 11:41:58 | 只看该作者
workbooks.add加个数量,不要多1000左右,做在workboos_open里,谁说不是病毒了呢?
12#
 楼主| 发表于 2008-2-26 11:34:48 | 只看该作者
用来作毒倒也不赖

点击这里给我发消息

11#
发表于 2008-2-26 09:48:43 | 只看该作者
都说了是另类代码嘛
10#
 楼主| 发表于 2008-2-26 08:04:06 | 只看该作者
实在是高

Sub test()
    Dim vUnlocked As Variant
    Dim rngUnlocked As Range
   
    With ActiveSheet
        .Unprotect Password:="abcd"   '<<<<这好象要加入解保护??
        If .ProtectContents = True Then .Unprotect
        vUnlocked = .UsedRange
        .UsedRange.ClearContents
        .Protect
        On Error Resume Next
        .UsedRange.Value = 1
        .Unprotect
        Set rngUnlocked = .UsedRange.SpecialCells(xlCellTypeConstants)
        .UsedRange = vUnlocked
        rngUnlocked.Select
        .Protect Password:="abcd"       '<<<< 这好象要加入加保护???
    End With
Selection.ClearContents
End Sub


运行之后所有的公式失去功能
还请改进

[ 本帖最后由 w5xzm 于 2008-2-26 08:29 编辑 ]

点击这里给我发消息

9#
发表于 2008-2-25 15:56:36 | 只看该作者
我师傅给了我个另类的代码,可以试试:
Sub test()
    Dim vUnlocked As Variant
    Dim rngUnlocked As Range
   
    With ActiveSheet
        If .ProtectContents = True Then .Unprotect
        vUnlocked = .UsedRange
        .UsedRange.ClearContents
        .Protect
        On Error Resume Next
        .UsedRange.Value = 1
        .Unprotect
        Set rngUnlocked = .UsedRange.SpecialCells(xlCellTypeConstants)
        .UsedRange = vUnlocked
        rngUnlocked.Select
    End With
selection.clearcontents
End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-26 02:31 , Processed in 0.102594 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表