当前位置:首页教育技巧excel技巧excel表格单元

excel表格vba怎么多行注释

2024-08-12 11:22:53


1.请高手为下面的excel VBA代码编写注释 请将注释写的尽量详细些,谢

Public m& '定义公共变量m

Sub lqxs()

Dim Arr, i&, Brr(1 To 27, 1 To 23), rq, nl '定义上述几个变量,Brr为27行23列的二维数组

Sheet1.Activate '使sheet1为当前活动的sheet

[c5:z32].ClearContents '清除C5到Z32单元格内的数据

Myr = Sheet2.[a65536].End(xlUp).row '将Sheet2中A列有数据的区域的行数,赋值给Myr变量

Arr = Sheet2.Range("a7:t" & Myr) '将A7到T列Myr行的区域命名为Arr

For i = 1 To UBound(Arr) '循环

rq = DateSerial(Left(Arr(i, 7), 4), Mid(Arr(i, 7), 5, 2), Right(Arr(i, 7), 2)) '将Sheet2中G列中的数据变为日期格式,如:2013/12/12

nl = DateDiff("yyyy", rq, Now) '判断Sheet2中G列数据日期的年份是否和今年相同,相同传回0,不相同传回1

Call jd(Arr(i, 13)) '调用jd()函数

Brr(1, nl + 1) = Brr(1, nl + 1) + 1 '数组Brr(1, nl + 1) 的值加一

Brr(m, nl + 1) = Brr(m, nl + 1) + 1 '数组Brr(1, nl + 1) 的值加一

Next

[d5].Resize(27, 23) = Brr '将数组的值赋值给D5单元格开始,到下面26行右面22列

[c5].Formula = "=sum(rc[1]:rc[23])" '给C5单元格添加公式, C5=D5+E5+F5++AB5

[c5].AutoFill [c5].Resize(27, 1) '格式填充 将C5的格式填充到C31单元格

[d6].Formula = "=sum(r[1]c:r[4]c)" '给D6单元格添加公式,D6=D7+D8+D9+D10

[d6].AutoFill [d6].Resize(1, 23) '格式填充,将D6的格式填充到AB31单元格

End Sub

2.谁能帮我注释下这段数据有效性多行三级联动VBA代码?我不是很懂

Option Explicit '强制定义变量(如果有本句存于开始,则所有变量需定义)Private Sub Worksheet_SelectionChange(ByVal Target As Range) '当工作表选区发生改变时执行本程序(固定格式)Dim i As Integer '定义变量 i 为 整型值Dim lastRow As Long '定义变量 lastRow 为 长整型值Dim strTemp As String '定义变量 strTemp 为 字符串Dim rgs As Range '定义变量 rgs 为 单元格区域Dim rg As Range '定义变量 rg 为 单元格区域Dim d, Res '定义变量 d,ReslastRow = Sheet2.Range("A65536").End(xlUp).Row ' lastRow= Sheet2的<单元格>区域("A65536" )的<末端>(方向向上 )的行标On Error Resume Next '当错误 转到 下一个If Target.Column = 1 Then '如果 Target的列标=1 则执行 Set rgs = Sheet2.Range("A2:A" & lastRow) '设定rgs= Sheet2的<单元格>区域("A2:A" & lastRow)Set d = CreateObject("Scripting.Dictionary") '设定d=<创建工程>("Scripting.Dictionary")For Each rg In rgs '设定变量范围为每一个rg位于rgs If Not d.exists(rg.Value) Then '如果 非 d的存在 rg的值) 则执行 d.Add rg.Value, rg.Value ' d的添加 rg的值, rg的值End If 'If判断过程结束Next '下一个Res = d.Items 'Res= d的ItemsDim arr1() '定义变量 arr1()For i = 0 To d.Count - 1 '设定变量范围为 i=0到 d的计数值-1 ReDim Preserve arr1(i) '重定义变量预留的arr1(i) arr1(i) = Res(i) 'arr1(i)=Res(i)Next '下一个strTemp = Join(arr1, ",") 'strTemp=<连接字符串>(arr1,",")Erase arr1 '删除arr1With Target.Validation '工作于 Target的Validation .Delete '的删除 .Add Type:=xlValidateList, Formula1:=strTemp '的添加 类型=xlValidateList,公式1=strTempEnd With 'With语句结束ElseIf Target.Column = 2 Then '另外如果 Target的列标=2 则执行 Set rgs = Sheet2.Range("B2:B" & lastRow) '设定rgs= Sheet2的<单元格>区域("B2:B" & lastRow) Set d = CreateObject("Scripting.Dictionary") '设定d=<创建工程>("Scripting.Dictionary") For Each rg In rgs '设定变量范围为每一个rg位于rgs If Not d.exists(rg.Value) Then '如果 非 d的存在 rg的值) 则执行 If rg.Offset(, -1) = Target.Offset(, -1) Then '如果 rg的<偏移>(,-1)= Target的<偏移>(,-1) 则执行 d.Add rg.Value, rg.Value ' d的添加 rg的值, rg的值 End If 'If判断过程结束End If 'If判断过程结束Next '下一个Res = d.Items 'Res= d的ItemsDim arr2() '定义变量 arr2()For i = 0 To d.Count - 1 '设定变量范围为 i=0到 d的计数值-1 ReDim Preserve arr2(i) '重定义变量预留的arr2(i) arr2(i) = Res(i) 'arr2(i)=Res(i)Next '下一个strTemp = Join(arr2, ",") 'strTemp=<连接字符串>(arr2,",")Erase arr2 '删除arr2With Target.Validation '工作于 Target的Validation .Delete '的删除 .Add Type:=xlValidateList, Formula1:=strTemp '的添加 类型=xlValidateList,公式1=strTempEnd With 'With语句结束ElseIf Target.Column = 3 Then '另外如果 Target的列标=3 则执行 Set rgs = Sheet2.Range("C2:C" & lastRow) '设定rgs= Sheet2的<单元格>区域("C2:C" & lastRow) Set d = CreateObject("Scripting.Dictionary") '设定d=<创建工程>("Scripting.Dictionary") For Each rg In rgs '设定变量范围为每一个rg位于rgs If Not d.exists(rg.Value) Then '如果 非 d的存在 rg的值) 则执行 If rg.Offset(, -2) = Target.Offset(, -2) Then '如果 rg的<偏移>(,-2)= Target的<偏移>(,-2) 则执行 If rg.Offset(, -1) = Target.Offset(, -1) Then '如果 rg的<偏移>(,-1)= Target的<偏移>(,-1) 则执行 d.Add rg.Value, rg.Value ' d的添加 rg的值, rg的值 End If 'If判断过程结束End If 'If判断过程结束End If 'If判断过程结束Next '下一个Res = d.Items 'Res= d的ItemsDim arr3() '定义变量 arr3()For i = 0 To d.Count - 1 '设定变量范围为 i=0到 d的计数值-1 ReDim Preserve arr3(i) '重定义变量预留的arr3(i) arr3(i) = Res(i) 'arr3(i)=Res(i)Next '下一个strTemp = Join(arr3, ",") 'strTemp=<连接字符串>(arr3,",")Erase arr3 '删除arr3With Target.Validation '工作于 Target的Validation .Delete '的删除 .Add Type:=xlValidateList, Formula1:=strTemp '的添加 类型=xlValidateList,公式1=strTempEnd With 'With语句结束Else '另外 Exit Sub '退出子程序End If 'If判断过程结束End Sub '子程序结束。

3.Excel vba 注释怎么加

1. Sub 计算()

Dim a as Integer '定义变量 a 为 整数型

a=Val(InputBox(“请输入一整数a”) '将对话框中输入的值转化为数值并赋值给变量a

If a>=0 Then '条件语句,如果a大于等于零

a=a+10 '则,变量a等于原变量值+10

Else '否则a小于零

a=-a+10 '变量a等于10-变量a

End '条件语句结束

Sheet1.Activate '激活sheet1表

Cells(1, 1) = a '将变量a的值写入单元格A1

End Sub '过程结束

2.Sub color()

For k = 1 To 7 '循环语句,执行7次

c = "A" & k ''确定单元格,如A1 、A2

Range(c).Select '选定单元

Selection.Interior.ColorIndex = k '给选定的单元格标色

Next

End Sub 该过程执行完后会给至A7单元格表上7种颜色。

具体如下:

1、简介

EXCEL表处理软件是美国微软公司研制的办公自动化软件OFFICE 中的重要成员,经过多次改进和升级,最新版本为EXCEL2000。它能够方便的制作出各种电子表格,使用公式和函数对数据进行复杂的运算;用各种图表来表示数据直观明了;利用超级链接功能,用户可以快速打开局域网或Interner上的文件,与世界上任何位置的互联网用户共享工作薄文件。

2、软件

Excel中大量的公式函数可以应用选择,使用Microsoft Excel可以执行计算,分析信息并管理电子表格或网页中的数据信息列表,可以实现许多方便的功能,带给使用者方便。与其配套组合的有:Word、PowerPoint、Access、InfoPath及Outlook,Publisher

3、百科名片

Microsoft Excel是微软公司的办公软件Microsoft office的组件之一,是由Microsoft为Windows和Apple Macintosh操作系统的电脑而编写和运行的一款试算表软件。Excel 是微软办公套装软件的一个重要的组成部分,它可以进行各种数据的处理、统计分析和辅助决策操作,广泛地应用于管理、统计财经、金融等众多领域。

4.请excel vba .高手注释一下以下代码,谢谢

1

2

3

4

5

6

7

8

9

10

11

12

13

Application.ScreenUpdating = False'关闭屏幕刷新以提速

r = Cells(Rows.Count, 2).End(3).Row '取B列最后非空单元格行号

ForEachRng InApplication.Intersect(ActiveSheet.UsedRange, Columns(2)) '遍历B列已用单元格

IfRng.Interior.ColorIndex = 3 Then'若目标rng的底色为红色

Range(Rng.Offset(1), Cells(r, 9)).Copy Rng '将某区域复制到以目标rng为左上角为起始点的单元格。所说的某区域,是指以目标rng下面那格为左上角起始点,第9列第r行为右下角结束点的矩形区域。

ExitFor

EndIf

Next

Forj = 2 To9

Cells(r, j) = 0 '将第2到9列第r行的格子填充0

Nextj

ActiveSheet.UsedRange.Borders.LineStyle = xlContinuous

Application.ScreenUpdating = True

相关信息


电脑版

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2025 www.at317.com All Rights Reserved .