VBA Excel实战
来源:互联网 发布:网络循环贷款 编辑:程序博客网 时间:2024/06/01 11:19
为了帮朋友实现Excel中的一个功能,接触了VBA Excel。历经两天的时间,现将最终结果存档。
参考资料
vba excel编程三日谈
实现功能
在Excel文档中,当第一列为“是”,则右边6个单元格不可编辑且背景色改变;当第一列为“否”,则右边6个单元格可编辑且背景色恢复白色。
准备工作
新建一个Excel文档,选中第一列,按照下图设置数据有效性:
代码
Private Sub Worksheet_Change(ByVal Target As range) If Target.Column = 1 Then Dim editable As Boolean Dim rowNumber As Integer Dim columnNumber As Integer Dim rag As range rowNumber = Target.Row columnNumber = Target.Column Set rag = range(Cells(rowNumber, columnNumber + 1), Cells(rowNumber, columnNumber + 6)) If Target.Text = "是" Then editable = False rag = "" With rag.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorDark1 .TintAndShade = -0.149998474074526 .PatternTintAndShade = 0 End With End If If Target.Text = "否" Then editable = True With rag.Interior .Pattern = xlNone .TintAndShade = 0 .PatternTintAndShade = 0 End With End If With rag.Validation .Delete .Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=editable .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .IMEMode = xlIMEModeNoControl .ShowInput = True .ShowError = True End With End If End Sub
- VBA Excel实战
- 《Excel VBA实战技巧精粹》终于登场了
- Excel Vba
- excel VBA
- Excel VBA
- EXCEL+VBA
- Excel VBA
- Excel VBA
- Excel VBA
- VBA Excel
- Excel 2010 VBA实战技巧精粹——互动出版网
- Excel中的VBA编程
- VBA for EXCEL FAQ
- Microsoft Excel VBA Examples
- Excel VBA 重要参考
- excel 问题,vba
- EXCEL VBA中的类
- Excel VBA教程
- 告别过去,面向未来
- CRC算法及原理
- DemoCNN_MNIST error
- 未来两个月计划
- 网页去重:搜索引擎重复网页发现技术分析1
- VBA Excel实战
- jquery 获取各种屏幕的宽度和高度
- java 定义二维数组的多种方式
- .net发邮件
- c# 隐藏winform程序在任务管理器中进程
- Ant
- c#.net多线程编程教学(3):线程同步
- Windows下摄像头采集驱动(DirectShow)
- Context3D类中的drawTriangles方法(利用GPU绘制三角形)