Excel用宏vb命令怎指定某一列锁定,其他单元格可编辑与合并?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Excel用宏vb命令怎指定某一列锁定,其他单元格可编辑与合并?相关的知识,希望对你有一定的参考价值。

经自己测试通过保护工作表后,发现其他表格无法合并

应该无法实现,excel本身是二维表格,行列都是关联的,保护了列,本身行的结构也不能够进行修改,而且工作表保护是本身就保护了工作表结构的一致性,所以只能在原有结构基础上进行修改,不能进行格式的调整,格式部分只能修改填充这类非结构内容,如果非要修改,那么可以直接用VBA模拟锁定工作表的某一列,也就是在某一列所有单元格上触发select事件,可以自动取消select,转移到其他位置或者直接提示报警框,下面是个示例:

结果如下:

这种保护并不是加密

追问

请问一下,如果是设置第二列和第五列不可编辑呢

参考技术A 点击鼠标右键,选择“新建”选项,然后点击“mircosoft office Excel 2007”选项新建一个Excel文件。制作表格、写入数据。选择界面上方的“开发工具”选项,然后点击“宏”选项写明VBA代码名称,然后点击“创建”按钮。写入指定的VAB代码。点击插入一个按钮控件,并命名为“合并内容”。选中“合并内容”控件,然后点击鼠标右键,选择“指定宏”。将编写的代码指定至按钮控件上,然后点击“确定”按钮。点击一次按钮控件,指定单元格的内容就自动合并完成了。

如何用变量给excel单元格赋值

1、首先打开一个工作样表作为例子。

2、使用alt+f11组合快捷键进入vbe编辑器,插入一个新的模块,并在模块中输入以下代码:Sub test2()Worksheets("Sheet1").Range("A1").Value =
_Worksheets("Sheet1").Range("A5").ValueMsgBox "现在A1单元格中的值也为" &
_Worksheets("Sheet1").Range("A5").ValueEnd Sub

3、可以看到这里指定了中名为sheet1的工作表,并使用了range选取了a1单元格,选择单元格值的属性。换个方式说就是sheet1中a1单元格是对象,value值是属性。

4、这里有个下划线,在vba中是作为连接符存在的,意思是下一行的代码是链接到本行代码后,不是中断的语句。

5、使用msgbox函数来显示一段信息,提示a1的单元格值为,后面链接了a5单元格的值,其实因为前面有赋值,所以这里直接写a1单元格的值也是可以的。

6、因为这里的对象很统一,所以代码我们可以用with简写,那么我们只用写一个with语句像下面这样With Worksheets("sheet1")

.Range("A1").Value = _

.Range("A5").Value

MsgBox "现在A1单元格中的值也为" & _

.Range("A5").Value

End With。

7、可以看到代码运行成功,a1和a5单元格内的值一样,证明赋值成功。

8、

参考技术A 假设把 sheet1 中A1单元格赋值给X变量,语句如下:
X = sheets(1).range("A1")
假设X经过计算后,得到一个变量值Y,那么把Y赋值给A1,语句为:
sheets(1).range("A1")=Y
这样就实现了单元格与变量之间的相互赋值

关于此例中涉及到的VBA中变量的相关知识:
1、什么是变量

变量是一个命名的内存位置。是在程序或代码运行过程中,用于临时存储数据,并且其存储的数据可以根据需要发生改变的一个命名项目。
变量由名称(变量名)和数据类型指定:
变量名——用来引用变量
数据类型——确定变量所能存储信息的种类以及所占存储空间的大小
2、变量的命名规则
(1)名称是由字母(A-Z,a-z)或数字和下划线“_”的任意组合。(在Excel 2002以后的版本中也可以包含中文);最后一个字符可以是类型说明符;
(2)变量名的长度不得超过255个字符
(3)变量名在有效的范围内必须是唯一的。有效的范围就是引用变量可以被程序识别的作用范围 例如一个过程、一个窗体等等;
(4)变量名不能是VBA中的保留字(关键字),也不能是末尾带类型说明符的保留字,但可以把保留字嵌入变量名。
说明:
(1)变量名是不区分大小写的。如ABC、aBc、abc等都是一样的;
(2)定义和使用变量时,通常要把变量名定义为容易使用阅读和能够描述所含数据用处的名称;
(3)根据需要混合使用大小写字母和数字。如果需要使用多单词组,变量中每个单词的第一个字母大写,例如:DataTemp表示临时数据,也可以两个单词中下划线分隔,例如:Last_Num;
(4)对于变量名也有更好的建议,每个变量名以两个或三个字符缩写开始,这些字符缩写对应于变量要存储数据的数据类型。例如strWorksheet as string表用来示工作表名,前缀str表示当前变量的类型。

以上是关于Excel用宏vb命令怎指定某一列锁定,其他单元格可编辑与合并?的主要内容,如果未能解决你的问题,请参考以下文章

pandas设置excel单元格日期类型分秒

pandas设置excel单元格 日期 类型 分 秒

使用vb.net保护excel中的单元格

如何将Excel中某一列改为文本格式

Excel使用宏批量向单元格插入指定信息

excel 设置 单元格的值为可选值,可选值设置为某一列。