如何用VBA语句让EXCEL里某单元格不能被输入或更改?(比如说要让A1单元格不被输入)请诸路VBA高手赐教,谢谢!!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用VBA语句让EXCEL里某单元格不能被输入或更改?(比如说要让A1单元格不被输入)请诸路VBA高手赐教,谢谢!!相关的知识,希望对你有一定的参考价值。
Sub Macro1()Range("1:65536").Locked = False '解除全部锁定
Range("A1").Select '设置新锁定
Selection.Locked = True '开启锁定
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub 参考技术A 这个用vba实现和你单元格锁定没什么区别的,也是要锁定你的单元格,然后把其他不用的单元格解锁,然后锁定整个表格,才能达到你要求的目的。 参考技术B Private Sub Worksheet_Activate()
Dim A As String
A = Cells(1, 1)
Cells(2, 1).Select
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Cells(1, 1) = A Then
Else
MsgBox "此单元格保护!不能改写操作!"
Cells(1, 1) = A
End If
End Sub
VBA研究VBA中如何用求和函数SUM求和
作者:iamlaosong
SUM是Excel的函数,在VBA中调用需要加上Application.WorksheetFunction.Sum(),但是,Excel写法却不能用。
比如,excel单元格中可以写成=sum(d2:d100),VBA中是不能这么写的,即使加上引号写成Application.WorksheetFunction.Sum(“d2:d100”),语法上倒是没什么问题,却得不到正确的结果。
正确的写法是:Application.WorksheetFunction.Sum(range(“d2:d100”)),如果用变量,写法如下:
maxrow = [D65536].End(xlUp).Row '行数,出库单号数量
shuliang = Application.WorksheetFunction.Sum(Range("d2:d" & maxrow))
其中:
Application表示当前的EXCEL运行的程序。
WorksheetFunction表示调用当前EXCEL程序里的公式。
后面出现的SUM就是EXCEL里的默认公式。
Excel求和函数很多,如下:
SUM、SUMIF、SUMIFS、SUMPRODUCT、DSUM
以上是关于如何用VBA语句让EXCEL里某单元格不能被输入或更改?(比如说要让A1单元格不被输入)请诸路VBA高手赐教,谢谢!!的主要内容,如果未能解决你的问题,请参考以下文章
在EXCEL中 如何用VBA查找某特定单元格并返回该单元格的行和列值?
如何用vba实现在EXCEL固定区域坐标内点击单元格,显示日期控件