ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: W_ZHZH

[求助] 如何实现受保护工作表的共享问题?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-1-26 19:11 | 显示全部楼层

回复 10楼 W_ZHZH 的帖子

今天试了一下,发现用 VBA 代码写了“数据有效性”在共享状态下确实不能使用,与工作表保护与否没有关系!
所以,我按照自己的想法将你原来的工作表稍作修改。将数据有效性使用的数据在“系统信息”工作表中做了定义,并使用定义名称的方法分别作了定义(必须使用静态区域,不能使用动态区域!切记!)。然后在“主管领导”一列中使用了“数据有效性”,“承办科室”一列中也使用了“数据有效性”但使用了“INDIRECT”函数。经过这样处理后,就不再会出现楼主前面所说的问题!如果有什么新的主管领导或科室需要添加的话,尽量使用在中间插入的方法。要不然需要重新定义名称所引用的区域!

计划统计处办公信息记事表.rar

52.36 KB, 下载次数: 54

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-27 17:24 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
原帖由 lu_zhao_long 于 2010-1-26 19:11 发表
今天试了一下,发现用 VBA 代码写了“数据有效性”在共享状态下确实不能使用,与工作表保护与否没有关系!
所以,我按照自己的想法将你原来的工作表稍作修改。将数据有效性使用的数据在“系统信息”工作表中做了定义 ...

----------------------------
1,今天详实的研究了你写的程序,授意非浅,特别是巧妙的解决了数据的有效性共享问题,同时也看到你在编程方面的造诣,深感遇到位好老师,再次表示感谢!
2,我简单的用EXEL处理工作事物多年,但从来没用到过VBA方面编程处理一些事情,这次真是第一次,单位领导给了个任务,简单的在网上找了一些帖子当资料就开始边学边干了,我发现领导认为简单的事,我们做起来还真烦琐,要处理的交叉问题太多,表面看是个小程序,其实一点都不好弄,总算在老师您的帮助下,初步完成了领导交代的任务。
3,感谢的话不多说了,都记在心里了。学到了很多知识,真开心!
4,我在处长表里加了筛选功能,因为记录一多,领导想归类看情况不加筛选实在不方便,但也带来其他问题,比如,处长可编辑的区域扩大了,包括了各科汇报的情况,这就不符合要求了。
5,另外,各科如果不筛选,也很杂乱,不利于系统查看。同时,处长如果工作要求内容过多,在各科页面将显示不全,因为页面做死了,所以这个问题也需要解决。
6。总之,老师已经给解决好多问题,本应自己解决这些小问题,不该提出来,脸红啊。呵呵
7,多谢了!

TA的精华主题

TA的得分主题

发表于 2010-1-27 22:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 12楼 W_ZHZH 的帖子

楼主过讲了!能够帮助别人是我的快乐!也让我在帮助别人的过程得到了锻炼!
楼主第 4、5 项的要求可能比较简单。我为每个工作表设置了格式并添加了自动筛选功能(不需要 VBA 代码来实现);还为每个工作表的所有单元格使用“自动调整行高”;另外请楼主留意我在选择保护工作表时的所有允许的功能选项(可选择未保护单元格、格式化单元格、格式化列、格式化行、排序、使用自动筛选、使用自动透视表、编辑等功能)。
另外,我还将“登录”窗体代码进行了修改!增加了一个隐含的“ADMIN”用户,必须靠手动输入才行。当然判断用的 VBA 代码也做了相应的修改!
另外,对于“取消”按钮,我给它的“Cancel”属性设置为“True”,以保证当用户按下“Esc”按钮时会执行“取消”按钮!
最后一点提醒!建议楼主为整个 VBA 项目添加密码保护起来,禁止别人阅读代码,以免被别人掌握控制权!

计划统计处办公信息记事表.rar

56.36 KB, 下载次数: 135

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-29 08:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 lu_zhao_long 于 2010-1-27 22:02 发表
楼主过讲了!能够帮助别人是我的快乐!也让我在帮助别人的过程得到了锻炼!
楼主第 4、5 项的要求可能比较简单。我为每个工作表设置了格式并添加了自动筛选功能(不需要 VBA 代码来实现);还为每个工作表的所有单元 ...

----------------------------
1,首先还是感谢!
2,由于近日网站维护,没能第一时间和你沟通,所以就自己对程序(工作表设置)做了一些修改,也和你说的差不多,基本把问题给解决了。看来是个实践能力问题,真的不用编程的。
3,我现在再看看你新放的程序,在研读一番,我想一定使我再次飞跃。
4,我想实现一个各表总清空记录功能,因为,模拟状态下各部门胡乱编的汇报没必要保留,或以后也需要这功能。我现在的解决办法是解除共享后再单独解除表保护手工删除后再保护再共享,比较麻烦。(我想做在系统信息表里)
5,还想实现,各单元个双击不清除原来的内容,避免习惯性乱点出现空白后,又不知道原来的内容。
6,还想实现,一旦领导看完汇报内容后,在领导批复栏标住颜色后(比如红色),那么,对应部门就不能再从新汇报或更改汇报。避免领导不知道的情况发生。
7,可能还要加其他提出的要求,总之,还要完善。
8,谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-31 15:19 | 显示全部楼层

程序进入试运行阶段,又出现一个棘手的问题。

1,由于是共享工作簿,而且又容许处长和副处长(共5位领导)同时使用1个用户名和密码进入安排工作,这样就出现了他们之间互相接受对方编写的工作安排,因为序号或同一行单元格最多有5人同时编辑,一旦保存时就提示本行有人编辑过,所以就有冲突,必须舍弃一方。这个突发问题很另人上火。可能是原设计考虑不周造成的。
2,怎样解决呢?能否这样,一旦有人占用这单元行,就自动把编写的内容移动到最后一行,在重新保存,避免冲突。
3,或者时时查询本行是否有人占用,一旦有人占用,就当初不让编辑。估计也不好解决,因为多方没保存前,谁也查不到这行到底占不占用。
4,可否这样,只要编辑日期格,就触发存盘事件,这样他看到别人利用了就不再编辑了。呵呵,我试试这找灵不灵。
5,还请老师指教!

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-1-31 16:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
呵呵,真好用。只要日期栏一发生改变就提示别人占用过了。否则自己就可以占用了。
我想用一旦日期列进入编辑状态就提示,这样更早发现别人占用。

TA的精华主题

TA的得分主题

发表于 2010-1-31 16:36 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
原帖由 W_ZHZH 于 2010-1-31 16:08 发表
呵呵,真好用。只要日期栏一发生改变就提示别人占用过了。否则自己就可以占用了。
我想用一旦日期列进入编辑状态就提示,这样更早发现别人占用。

为楼主的成长而高兴!
其实在处理共享方面 Excel 还是有一些缺陷的!我觉得像楼主的这个问题最好使用数据库来处理会更好!
我手边有一本电子工业出版社出版的《巧学巧用 Excel 2003 VBA 与宏》书,作者是“[美] Bill Jellen, Tracy Syrstad”,王军 等译。其中第 19 章 《将 Access 作为后端来增强对数据的多用户访问》就是一个非常好的例子,与楼主的要求很类似。建议楼主可以去学习一下或许更好!相信肯定好用!

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-2-1 10:24 | 显示全部楼层
原帖由 lu_zhao_long 于 2010-1-31 16:36 发表

为楼主的成长而高兴!
其实在处理共享方面 Excel 还是有一些缺陷的!我觉得像楼主的这个问题最好使用数据库来处理会更好!
我手边有一本电子工业出版社出版的《巧学巧用 Excel 2003 VBA 与宏》书,作者 ...

------------------
好,我一定把这本书当作我的第2位老师。

TA的精华主题

TA的得分主题

发表于 2012-2-25 11:02 | 显示全部楼层
我碰见了同样的问题!!求帮忙~~~   先问下一个最迫切想知道的 如何改变EXCEL表题头啊,,这工作表里的选项 题头承办科室 承办情况  等等题头都不能改啊~~

TA的精华主题

TA的得分主题

发表于 2013-9-29 22:01 | 显示全部楼层
lu_zhao_long 发表于 2010-1-23 18:10
大致看了一下楼主的代码,这个问题与共享没有任何关系!有如下几种可能:
1。其实只要任何一个人输入了正确 ...

http://club.excelhome.net/forum. ... p;extra=#pid7220849

关于VBA共享的问题,我碰到了同样类似的问题,烦请您看看,谢谢啊
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-17 01:44 , Processed in 0.029516 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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