找回密码
 立即注册
搜索

EXCEL VBA 有效性 同步数据源

2
回复
544
查看
[复制链接]

16

主题

207

帖子

42

幻币

一流武者

Rank: 3Rank: 3

积分
249
QQ
2016-4-12 13:32:48 显示全部楼层 |阅读模式
假如一个工作簿中有N个表 每个表都有一个同样的数据源作为有效性序列下拉 控制数据输入 【有效性不能跨表取值】
取一个表【比如sheet1】作为源表 改动它 其余表的数据跟着改动
在sheet1中创建按钮 给这个按钮指定宏 代码如下
Option Explicit
Sub a131a()
Dim j
For j = 2 To Worksheets.Count
Sheets(j).Range("a1:b10").Value = Sheets(1).Range("a1:b10").Value
Next
End Sub
想同步数据 点一下按钮即可
虽然简单 但实用
PPT学习论坛
回复

使用道具 举报

10

主题

201

帖子

27

幻币

一流武者

Rank: 3Rank: 3

积分
249
QQ
2016-4-12 14:52:54 显示全部楼层
如果你的工作表名称不是按照sheet1 sheet2 ... 下去的 请把要同步数据源的工作表加一个标识符 比如"S" 而其它工作表不能有这个"S"
如此 同步数据的代码如下
Sub b131b()
Dim a
Dim sht As Worksheet
Dim shtName As String
For Each sht In ActiveWorkbook.Worksheets
shtName = sht.Name
a = InStr(shtName, "S")
If a = 0 Then
  sht.Range("b1:b10").Value = Worksheets("sheet1").Range("b1:b10").Value
End If
Next
End Sub
PPT学习论坛
回复 支持 反对

使用道具 举报

17

主题

191

帖子

46

幻币

一流武者

Rank: 3Rank: 3

积分
252
QQ
2016-4-12 16:11:14 显示全部楼层
如果你的工作表名称不是按照sheet1 sheet2 ... 下去的
这句话改成
如果你不希望所有表格都同步数据源
PPT学习论坛
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册